CSS高度塌陷问题及清除浮动的三种方式

简介: 在父元素最后增加一个空的块级子元素,并且让它设置clear: both

高度塌陷问题


  • 由于浮动元素脱离了标准流,变成了脱标元素,所以不再向父元素汇报高度
  • 父元素计算总高度时,就不会计算浮动子元素的高度,导致了高度坍塌的问题
  • 解决父元素高度坍塌问题的过程,一般叫做清浮动(清理浮动、清除浮动)
  • 清浮动的目的是
  • 让父元素计算总高度的时候,把浮动子元素的高度算进去


清除浮动的三种方式


方式一:


给父元素设置固定高度


扩展性不好(不推荐)


方式二:


在父元素最后增加一个空的块级子元素,并且让它设置clear: both


  • 会增加很多无意义的空标签,维护麻烦
  • 违反了结构与样式分离的原则(不推荐),因为你这是样式问题,却添加了一个标签,相当于借助结构来实现。


方式三:


给父元素增加::after伪元素


  • 纯CSS样式解决,结构与样式分离(推荐)


.clear-fix::after {
  content: "";
  display: block;
  visibility: hidden;
  height: 0;
}
.clear-fix {
  /* IE6/7 兼容性,现在一般不需要这个了,都淘汰了*/
  *zoom: 1;
}


目录
相关文章
|
前端开发
CSS布局:浮动 (结构伪类选择器、伪元素、标准流、浮动、清除浮动)
CSS布局:浮动 (结构伪类选择器、伪元素、标准流、浮动、清除浮动)
89 0
|
5月前
|
前端开发 容器
CSS基础-浮动:float与清除浮动
【6月更文挑战第9天】本文介绍了CSS中的`float`属性,用于创建多列布局和图文混排,但会导致浮动塌陷和元素重叠问题。为解决这些问题,文章探讨了`clear`属性的四种清除浮动方法,包括`clear`属性、空元素、伪元素和`overflow`方法。随着Flexbox和Grid布局的兴起,它们在某些场景下替代了浮动,但理解浮动原理仍是布局基础。掌握浮动和清除浮动技巧对构建稳定布局至关重要。
67 5
|
4月前
|
前端开发 C++ 容器
css【详解】—— 圣杯布局 vs 双飞翼布局 (含手写清除浮动 clearfix)
css【详解】—— 圣杯布局 vs 双飞翼布局 (含手写清除浮动 clearfix)
54 0
|
5月前
|
前端开发
Web网页制作-知识点(4)——CSS盒子模型、弹性盒模型(flex box)、文档流、浮动、清除浮动、定位、圆角、阴影二
Web网页制作-知识点(4)——CSS盒子模型、弹性盒模型(flex box)、文档流、浮动、清除浮动、定位、圆角、阴影二
49 0
|
5月前
|
前端开发 容器
Web网页制作-知识点(4)——CSS盒子模型、弹性盒模型(flex box)、文档流、浮动、清除浮动、定位、圆角、阴影(一)
Web网页制作-知识点(4)——CSS盒子模型、弹性盒模型(flex box)、文档流、浮动、清除浮动、定位、圆角、阴影一
76 0
|
6月前
|
前端开发
CSS清除浮动:让页面布局更上一层楼
CSS清除浮动:让页面布局更上一层楼
|
6月前
|
前端开发
CSS清除浮动的八种方法
CSS清除浮动的八种方法
|
6月前
|
前端开发
css清除浮动的几种办法
css清除浮动的几种办法
35 0
|
6月前
|
前端开发
CSS 清除浮动的几种方法
CSS 清除浮动的几种方法
31 0
|
前端开发 容器
Web前端 — CSS之盒模型 以及margin负值、塌陷重叠问题
Web前端 — CSS之盒模型 以及margin负值、塌陷重叠问题
66 0