给一个元素结点设置float属性,会让它脱离文档流,包裹它的父元素也会高度塌陷,进而会对它后面的元素产生影响,所以清除浮动很重要。
清除浮动的方法有:
- 给浮动元素之后增加一个div,并给这个新增的div设置class=“clear”,并且设置.clear{clear:both;}
.clear{
clear: both;
}
优点:随用随清,无兼容性问题
缺点:生成大量无意义的div
- 给浮动元素的父元素添加.clearfix{}类
.clearfix:after{
content: "";
display: block;
height: 0;
clear: both;
}
.clearfix{
zoom:1;
}
- 给浮动元素的父类添加
overflow: hidden;
- 给浮动元素的父类也添加
float:left;
这样会使父类紧紧包裹子类。