absolute子元素会占据定位父元素的scrollHeight?

有个问题想请教一下,我为一个相对定位的div元素增加了个绝对的子元素,外层元素高度300px,而那个绝对定位的子元素及高度>父元素高度,为450px。

本来弱弱的以为绝对定位元素不占据文档流,就像从正常文档里拿掉了一样,于是乎正因为父元素的scrollheight应该等于它的height:300px,没想到console.log后发现父元素的scrollheight等于绝对定位子元素的高度,这是为啥捏?

#wrapper {
    position:relative;
    width: 100%;
    height: 300px;
    background: #ccc;
    overflow: hidden;
}
#scroller{
    position: absolute;
    left: 0;
    top: 0;
    right: 100px;
    height:300px;
    background:blue;
}
<div id="wrapper">
    <div id="scroller" style="height:450px">
    </div>
</div>
阅读 2.8k
1 个回答

因为你给父级元素设置了 overflow:hidden

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题