【发布时间】:2020-12-15 09:56:50
【问题描述】:
我的html如下:
<html>
<head></head>
<body>
<div id="board">
<div class="person"></div>
</div>
</body>
</html>
现在这是我的 css:
*{
margin:0;
padding:0;
box-sizing:border-box;
}
#board{
position:relative;
height:500px;
width:500px;
background:yellow;
top:5rem;
left:8rem;
}
.person{
position:absolute;
top:34rem;
left:20px;
padding:1rem;
background-color:blue;
}
现在我的问题是为什么
.person的 div 没有绝对定位到#board的 div?我觉得它应该可以工作,因为父元素是相对定位的,然后子元素应该将自己定位到该父元素的绝对位置。当我给.persondiv 一个疯狂的top时,它仍然设法突破父 div。这是为什么?感谢您的任何反馈。
【问题讨论】:
-
在父元素为
position: relative的元素上使用position: absolute将始终允许它超出其父元素的边界;这就是使用它的重点。在此处查看absolute的文档:developer.mozilla.org/en-US/docs/Web/CSS/position#Values -
所以真的没有什么东西可以让子div被困在父元素内而不能离开父div?
-
我一定会检查链接。
-
你到底想完成什么?