最近遇到一个问题:当使用 position:absolute 时,给父元素添加 position:relative 父元素高度塌陷,此时如何使得父元素的高度被子元素撑开?
我了解到的高度塌陷无非就是:float属性,display:absolute/fixed属性
float与display:absolute/fixed都会使元素脱离文档流,使后面的元素窜到钙元素下方,这个就是高度塌陷,为了解决这个问题,通常是
1、为该元素添加一个子标签<div style="clear:both">,
2、给该元素overflow:hidden
3、zoom:1 + 伪元素
4、还有一万能清除法
.clearfix:after{ content:"."; display:block; height:0; clear:left; visibility:hidden; }
但是针对 position:absolute这种情况,以上方法都不会有效,
查资料,都说CSS不能直接完成这个需求,只能通过JS方法控制父元素的高度,我也没找到其他方式,在此记录下