清除浮动(不用背,用的时候CV)
1.额外标签法
选择器 { clear: 属性值; }
left 不允许左侧有浮动元素(清除左侧浮动的影响)
right 不允许右侧有浮动元素(清除右侧浮动的影响)
both 同时清除左右两侧浮动的影响
实际工作中,几乎只用clear:both;
清除浮动的策略是:闭合浮动(在需要格挡的元素后加</br>或者其他块级元素,如div。例子:<div class="...">...</div><div style="clear:both"></div>)
2.父级元素添加overflow
可以给父级元素添加overflow属性,将其属性设置为hidden、auto、scroll
缺点:无法显示溢出的部分
3.:after伪元素法
.clearfix:after { content: ""; display: block; height: 0; clear: both; visibility: hidden; } .clearfix { /* IE6、7专有 */ *zoom: 1; }
4.双伪元素清除浮动
.clearfix:before,.clearfix:after { content: ""; display: table; } .clearfix:after { clear: both; } .clearfix { *zoom: 1; }