zoukankan      html  css  js  c++  java
  • CSS3定位和浮动详解

    本文为大家分享CSS3定位和浮动的基础概念,与使用方法,供大家参考,具体内容如下

    一、定位

    1、 css定位:

    改变元素在页面上的位置

    2、 css定位机制:

    普通流:

    浮动:

    绝对布局:

    3、 css定位的属性:

    position 把元素放在一个静态的,相对的,绝对的,或者固定的位置中
    top/left/right/botom 元素向上/左/右/下的偏移量
    overflow 设置元素溢出其区域发生的事情
    clip 设置元素显示的形状
    vertical-align 设置元素显示的对其方式
    z-index 设置元素的堆叠顺序/用来设置元素的堆叠顺序,越大越在上方/

    position的属性
    static 静态的(默认)
    relative 相对布局(默认的)
    absolute 绝对布局 (和其他的标签无关联)
    fixed 固定的(不会随着页面的滚动而动)

    实例代码:

    CSS Code复制内容到剪贴板
    1. <body>   
    2.     <div id="position1"></div>   
    3.     <div id="position2"></div>   
    4.     <script>   
    5.         for (var i=0;i<100;i++){   
    6.             document.write(i+"<br/>")   
    7.         }   
    8.     </script>   
    9. </body>   
    10.   
    11. #position1{   
    12.      100px;   
    13.     height: 100px;   
    14.     background-color: blue;   
    15.     position: relative;   
    16.     left: 20px;   
    17.     top: 20px;   
    18.     /*用来设置元素的堆叠顺序,越大越在上方*/  
    19.     z-index: 2;   
    20. }#position2{   
    21.      100px;   
    22.     height: 100px;   
    23.     background-color: red;   
    24.     position: relative;   
    25.     left: 30px;   
    26.     top: 10px;   
    27.     z-index: 1;   
    28. }   
    29.   

    二、浮动

    float属性可用的值:
    left/right/none/inherit: 向左、右,不浮动,从父级继承。
    * float

    1.浮动后,脱离正常流,在浮动流中排列。任何元素都是作为块元素来显示,可设置宽高,内容撑开宽度。
    2.很多浮动块在一起的时候,他们总是找与自己最近的、浮动方向相同的块来确定自己的位置,如果被迫换行,则以这个最近的元素的高度为基准起新行

    clear属性: 去掉浮动属性(包括继承来的)
    意思和上面对应的一样

    需要清浮动的情况:

    子标签浮动后,父标签的高度无法被撑开,所以需要清浮动;
    新加入的标签,希望不受之前浮动元素的影响,则需要清浮动;

    1.clear:both; height:0; overflow:hidden;
    2.overflow:hidden; 触发layout 常用于清楚内浮动;
    3.after 伪对象:给当前对象设置
    .aa:after {content:”.”}
    .aa {display:inline-block;}
    .aa {display:block;}
    想办法 触发ie6的layout渲染机制,靠运气解决了很多bug,zoom:1可以触发!!!
    inline-block对内块 对外行;
    4.父标签一起浮动;
    5.position:absolute;清除浮动

    display
    display:block 以块元素显示;
    display:none 内容消失,不占空间;
    display:inline 以行内元素显示,可解决IE6的双倍BUG;
    display:inline-block 对内块,对外行。

    visibility:none
    隐藏,但是依旧占用空间,影响布局

    以上就是关于CSS3定位和浮动的全部内容,希望对大家的学习有所帮助。

  • 相关阅读:
    Memcache相关面试题
    Memcache使用场景
    php链接memcache操作
    永久数据被踢现象
    linux 压缩/解压命令大全
    Linux系统信息查看命令大全
    bundle update: env: ruby_executable_hooks: No such file or directory
    Pod::Executable pull
    Android签名机制:生成keystore、签名、查看签名信息
    Difference between 2>&-, 2>/dev/null, |&, &>/dev/null and >/dev/null 2>&1
  • 原文地址:https://www.cnblogs.com/lucktian/p/5522815.html
Copyright © 2011-2022 走看看