浮动小结

1 浮动可以让页面元素并排显示,制作一个干净的布局。严格定位,需要使用不限于“relative”和“absolute”定位。

2 浮动
● 页面元素定位的基本功能,创建一个自然流布局,允许元素设置自身大小和其父元素容器的大小。
● 元素浮动,其位置取决于放置在其周边元素的DOM(父子关系,兄弟关系)
● 最典型的问题:引起父元素塌陷:一个父元素包含了多个浮动的子元素。页面的内容设置了一个宽度,子元素的浮动确定了他们的位置,但浮动元素不会影响父元素的宽度。这样做会让父元素塌陷,从而使父元素的高度为“0”,以及忽略其他的属性。


解决办法:


1 在容器的结束标签前添加一个空标签,设置其样式为“clear:both”,大多数情况下有效,但是不适合语义化,要死页面有多次浮动清除的话,造成空标签堆积,而且在页面中没有上下文内容。


2 使用“overflow”属性:在具有浮动元素的父容器中设置“overflow”的属性值为“auto”(在IE浏览器中会有滚动条)/“hidden”,这样父容器就会有一个高度存在。IE6里面,父容器需要设置一个“width”和“height”,高度可能是一个变量,宽度为100%,可以正常工作。


3 使用clearfix技巧:在父元素上使用“:before”和“:after”两个伪类。可以在浮动元素的父容器前面和后面添加隐藏的元素。“:before”伪类是用来防止元素顶部的外边距塌陷,在IE67中,使用“display:table”创建一个匿名的“table-cell”元素,确保一致性。“:after”伪类是用来防止子元素的底部的外边距的塌陷,以及用来清除元素的浮动。在IE67中在加上“*zoom”属性来触发父元素的hasLayout的机制,决定了元素怎样渲染内容,以及元素与元素之间的相互影响。


详情参考:w3cplus

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值