css3-定位和浮动

本文详细介绍了CSS3中的定位机制,包括普通流、浮动和绝对布局。重点讲解了position属性,如static、relative、absolute和fixed。同时,讨论了float属性及清除浮动的方法,如clear属性和使用伪元素。此外,提到了display属性在处理元素显示方式中的作用。
摘要由CSDN通过智能技术生成

1、 css定位:
改变元素在页面上的位置
2、 css定位机制:
普通流:元素按照其在HTML中的位置顺序决定排布的过程
浮动:
绝对布局:
3、 css定位的属性:
position 把元素放在一个静态的,相对的,绝对的,或者固定的位置中
top/left/right/botom 元素向上/左/右/下的偏移量
overflow 设置元素溢出其区域发生的事情
clip 设置元素显示的形状
vertical-align 设置元素显示的对其方式
z-index 设置元素的堆叠顺序/用来设置元素的堆叠顺序,越大越在上方/

  1. position的属性

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


实例代码:

<body>
    <div id="position1"></div>
    <div id="position2"></div>
    <script>
        for (var i=0;i<100;i++){
            document.write(i+"<br/>")
        }
    </script>
</body>

#position1{
    width: 100px;
    height: 100px;
    background-color: blue;
    position: relative;
    left: 20px;
    top: 20px;
    /*用来设置元素的堆叠顺序,越大越在上方*/
    z-index: 2;
}#position2{
    width: 100px;
    height: 100px;
    background-color: red;
    position: relative;
    left: 30px;
    top: 10px;
    z-index: 1;
}

2.浮动

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
    隐藏,但是依旧占用空间,影响布局

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值