高度塌陷问题

本文详细解释了在CSS布局中,当父元素仅包含浮动子元素时出现的高度塌陷现象,并提供了三种有效的解决方案:浮动父级元素并使用clear:both;使用overflow:hidden与zoom:1;利用:after伪类进行清除。

高度塌陷问题

描述1:如果父元素只包含浮动元素,且父元素未设置高度和宽度,那么它的高度就会塌缩为零,也就是所谓的“高度塌陷”。

描述2:在文档流中,父元素的高度默认是被子元素撑开的,也就是子元素多高,父元素就多高。但是当子元素设置浮动之后,子元素会完全脱离文档流,此时将会导致子元素无法撑起父元素的高度,导致父元素的高度塌陷。

解决“高度塌陷”问题的方法:

1.浮动父级元素,父级元素的高度就会扩大,直到完全包含它里面的浮动元素。如果使用这种方法,一定要在该元素的

下个元素添加clear:both,确保浮动元素落到父级元素的下方。

2.使用overflow:hidden,zoom:1 。overflow:hidden属性会强制父级元素扩大到包含浮动元素,zoom:1只是触发ie6

的hasLayout模式,不会对其他浏览器产生影响。

{
  overflow:hidden;
  zoom:1;
}

3.使用:after伪类清除,不会影响其他任何样式,通用性强。

.clearfix{
  zoom:1;
}
.clearfix:after{
  content:'';
  display:block;
  height:0;
  clear:both;
  overflow:hidden;
}

转载于:https://www.cnblogs.com/liyi-wutong/p/7673977.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值