https://segmentfault.com/a/1190000004865198
清除浮动:当容器的高度设置为auto,并且设置左、右浮动时,容器的高度不能自动伸长以适应内容的高度,使得内容溢出。这种现象叫做溢出浮动,此时就要清除浮动。
浮动元素引起的问题:
(1)父元素的高度无法被撑开,影响与父元素同级的元素 (2)与浮动元素同级的非浮动元素(内联元素)会跟随其后 (3)若非第一个元素浮动,则该元素之前的元素也需要浮动,否则会影响页面显示的结构
清浮动方法:
1、在浮动元素后面加一个空元素div,里面的class设置clear:both;即可清理浮动。
2、使用css的overflow属性,给浮动元素添加overflow:hidden;overflow:auto;可以清除浮动。添加之后,浮动元素又回到了容器层,把容器高度撑起,达到清理浮动的效果。
3、使用邻接元素处理,给浮动元素后面添加clear属性,后面的元素可以有自己的内容
4、结合:after伪元素清浮动,(伪元素,代表一个元素之后最近的元素),给浮动元素添加一个clearfix类,然后给这个class添加一个看不见的:after伪元素,实现元素末尾添加一个看不见的块元素,用来清理浮动。