清除浮动的方法
- 额外标签法也称为隔墙法,是W3C推荐的做法
- 父级添加overflow属性
- 父级添加after属性
- 父级添加双伪元素
额外标签法
额外标签法会在浮动元素末尾添加一个空标签。例如<div style=" clear.both" > </div>,或者其他标签(如<br/>等)
- 优点:通俗易懂,书写方便
- 缺点:添加许多无意义的标签,结构化较差
注意:要求这个新的空标签必须是块级元素。
父级添加overflow
可以给父级添加overflow属性,将其属性值设置为hidden、auto、或scroll。
子不教父之过注意是给父元素添加代码
- 优点:代码简介
- 缺点:无法显示溢出的部分
after伪元素法
:after方式是额外标签法的升级版,也是给父元素添加
.clearfix : after {
content : "" ;
display : block;
height : 0 ;
clear : both :
visibility : hidden ;
.clearfix { /* IE6、7专有 */
*zoom : 1 ;
}
- 优点:没有增加标签,结构更简单
- 缺点:照顾低版本浏览器
- 代表网站:百度、淘宝网、网易等
双伪元素清除浮动
.clearfix : before , . clearfix : after {
contert : " " ;
display : table ;
}
. clearfix : after {
clear : both ;
}
. clearfix {
*zoom : 1 ;
}
- 优点:代码更简洁
- 缺点:照顾低版本浏览器
- 代表网站:小米、腾讯等