css在设置浮动的时候,会脱离文档流,所谓的脱离文档流,就是将元素从普通的布局排版(上下左右)中拿走,其他盒子在定位的时候,会当做脱离文档流的元素不存在而进行定位。更准确地一点说,一个元素脱离文档流(out of normal flow)之后,其他的元素在定位的时候会当做没看见它,两者位置重叠都是可以的。
利用伪元素清除浮动:
.clear-fix:after{ content: ''; /*取String,在clear-fix对象之后,显示这个字符*/ display: block; //块级元素,可以设置宽高 clear: both; overflow: hidden; }