父元素的高度是由子元素撑开的,且子元素设置了浮动,父元素没有设置浮动,子元素脱离了标准的文档流,那么父元素的高度会将其忽略,如果不清除浮动,父元素会出现高度不够,那样如果设置border或者background都得不到正确的解析。
清除浮动的方法:
1、给浮动元素父级加overflow:auto;在IE6中需要加上zoom:1
2、使用:after伪元素
.clearfix:after{
content:"";
dispaly:block;
height:0;
clear:both;
visibility:hidden;
}
.clearfix{
zoom:1;
}
或是:
.clearfix:after,.clearfix:before{
content:"";
display:table;
}
.clearfix:after{
clear:both;
}
时间: 2024-10-12 21:35:24