提问人:Pranav Anand 提问时间:7/30/2023 更新时间:7/30/2023 访问量:29
为什么顶部偏移量(以 % 为单位)不会垂直移动相对定位的元素?
Why does top offset, when given in % doesn't move the relatively positioned element vertically?
问:
假设有一个相对定位的 div 元素。当我以 % 为单位设置最高值时,它什么也没做。但是只要我用px表达它,它就会起作用。有什么特别的原因/逻辑吗?
这是行不通的
<style>
div{
position:relative;
height:300px;
width:300px;
top:20%;
}
</style>
<body>
<div>Hello</div>
</body>
虽然这有效
<style>
div{
position:relative;
height:300px;
width:300px;
top:20px;
}
</style>
<body>
<div>Hello</div>
</body>
我试着把这个div放在一个容器里,它起作用了。它移动的量与包含元素的高度是真实的。
答:
2赞
imhvost
7/30/2023
#1
为此,您需要设置为父元素,或 + :height
min-height
display: grid
body {
min-height: 100vh;
display: grid;
}
div {
position: relative;
height: 300px;
width: 300px;
top: 20%;
}
<div>Hello</div>
上一个:防止内容扩展网格项
评论
position: relative;
position:relative