我观察到绝对定位的父级将设置自己的高度以覆盖子元素的行为,而相对定位的父级则不会。我创建了2个jsfiddles来模仿这个:
绝对值: https://jsfiddle.net/kc1g7v9s/
相对: https://jsfiddle.net/smy5q8Ld/
当检查渲染结果的元素时,绝对容器div的尺寸为220x60,而relative-container div的尺寸为689x0。
为什么这样?我并不是特别想要实现任何目标,只是对这种行为感到好奇。
附加代码:
绝对:
<div class="absolute-container">
<div class="child1"></div>
<div class="child2"></div>
</div>
.child1, .child2 {
width: 100px;
height: 60px;
background-color: grey;
margin-right: 10px;
}
.child1 {
float: left;
}
.child2 {
float: right;
}
.absolute-container {
position: absolute;
clear: both;
}
相对
<div class="relative-container">
<div class="child1"></div>
<div class="child2"></div>
</div>
.child1, .child2 {
width: 100px;
height: 60px;
background-color: grey;
margin-right: 10px;
}
.child1 {
float: left;
}
.child2 {
float: right;
}
.relative-container {
position: relative;
clear: both;
}