CSS中浮动float带来的高度塌陷问题及4种解决方案
    		       		warning:
    		            这篇文章距离上次修改已过449天,其中的内容可能已经有所变动。
    		        
        		                
                在CSS中,浮动元素(float)会导致其父元素的高度塌陷,也就是父元素的高度不能自动撑开来容纳浮动的子元素。这个问题通常被称为“浮动塌陷”。以下是解决这个问题的四种常用方法:
- 使用
clear属性清除浮动:在浮动元素之后添加一个空的元素,并设置clear: both;来清除前面元素的浮动,这样父元素就可以识别到浮动子元素的存在,并且计算它们来扩展自身高度。 
.clearfix::after {
  content: "";
  display: table;
  clear: both;
}- 使用伪元素清除浮动:与使用额外元素相似,但是更为优雅和简洁。
 
.clearfix::after {
  content: "";
  display: table;
  clear: both;
}- 使用
overflow属性:可以给父元素设置overflow: auto;或overflow: hidden;,这样浏览器会自动计算浮动元素并且增加父元素的高度。 
.overflow-container {
  overflow: auto;
}- 使用Flexbox布局:如果你的页面支持Flexbox布局,可以给父元素设置
display: flex;,这样它会自动调整其子元素的高度来适应它们。 
.flex-container {
  display: flex;
}这四种方法各有优缺点,选择哪种方法取决于你的具体需求和项目的兼容性要求。通常情况下,伪元素的方法是最为现代和推荐的解决方案。
评论已关闭