如何理解CSS样式中清除浮动为什么需要这么做?以及如何实现?
浮动元素会影响到其父元素的高度和宽度,可能会影响到后续元素的布局。而清除浮动可以解决这个问题。
清除浮动的方法有很多种,以下是常用的几种:
- 在父元素最后一个浮动元素后添加一个空的div,给这个div添加清除浮动的样式:
.clearfix::after {
content: "";
display: block;
clear: both;
}
- 使用overflow属性,将父元素设置为overflow:hidden或overflow:auto:
.parent {
overflow: hidden;
}
- 使用伪元素:before和:after,给父元素添加清除浮动的样式:
.parent::before,
.parent::after {
content: "";
display: table;
clear: both;
}
需要清除浮动的情况包括:
- 父元素包含浮动元素,但没有设置高度或宽度;
- 父元素中有浮动元素,后面的元素布局混乱;
- 父元素中有浮动元素,但是子元素需要在父元素中居中显示。
原文地址: http://www.cveoy.top/t/topic/bpcX 著作权归作者所有。请勿转载和采集!