gpt4 book ai didi

css - 为什么当元素 y 具有绝对位置时,另一个元素 y 下面的元素 x 向上移动

转载 作者:行者123 更新时间:2023-11-28 00:04:56 25 4
gpt4 key购买 nike

有一个 div container,其中包含黄色和绿色 2 个盒子。绿色框就在黄色框的下方。当我们使用相对于容器的顶部和底部移动黄色框时,它会移动而不会干扰绿色框的位置。但是当我们使用顶部和底部 Absolutely 将黄色框移动到容器时,绿色框也会向上移动。为什么绿框的位置变了?

JSFiddle Output

.box {
width:100px;
height:100px;
}

.container {
width:500px;
height:500px;
position:relative;
background: #333;
}

#box-1 {
position: relative;
top: 50px;
left:50px;
background: red;
}
#box-2 {
position: absolute;
/* position: relative; */
top:100px;
left:100px;
background: yellow;
}
#box-3 {
background: green;
}
#box-4 {
background: blue;
}
#box-5 {
background: orange;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<style>

</style>
</head>
<body>
<div id="box-1" class="box"></div>
<div class="container">
<div id="box-2" class="box"></div>
<div id="box-3" class="box"></div>
</div>
<div id="box-4" class="box"></div>
<div id="box-5" class="box"></div>
</body>
</html>

最佳答案

您会在这里找到答案https://developer.mozilla.org/en-US/docs/Web/CSS/position

然而,当一个元素被绝对定位时,它的计算位置是相对于父元素或该元素定位到的元素的边缘的特定偏移量。它不遵循其他元素的规则,就像你把它从其他元素的流中伸出来一样。

另一方面,相对定位的对象是最容易混淆的。它的意思是“相对于自身”,但它的位置受流中其他元素的影响。

因此,绿色框实际上在移动,因为您正在从“景观”中移除黄色框。

希望对您有所帮助!

关于css - 为什么当元素 y 具有绝对位置时,另一个元素 y 下面的元素 x 向上移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55767082/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com