为什么需要清除浮动?
浮动的属性虽然方便使用,但是在使用这种属性时,也存在着一种弊端,那就是当子元素设置了float属性之后,且父元素的高度和宽度没有进行设置,而是由子元素支撑起来,则会导致父元素的高度塌陷(原本的height后来被置为0)
清除浮动的方法
方法一:给父元素添加声明overflow:hidden**;
缺点:当子元素有定位设置,定位到父元素外边时,不希望溢出父元素部分隐藏时,此方法就不可行了
方法二:在最后一个浮动元素下方添加空div,并给该元素添加声明:clear:both;height:0;overflow:hidden;
缺点:在html结构文档中会形成很多冗余代码
万能清除浮动法:父元素选择符:after{content:".";clear:both;display:block;height:0;overflow:hidden;visibility:hidden}