我有:
<div style="position: relative; width: 500px; background-color:Yellow;">
<div style="position: absolute; top: 0px; left: 0px;">A</div>
<div style="position: absolute; top: 0px; right: 0px;">B</div>
</div>
background-color
被忽略。但是当我删除第一个inside-div的style
时,显示的颜色 。为什么呢?
答案 0 :(得分:3)
为你的第一个div设置一个高度
像:
<div style="height:30px;position: relative; width: 500px; background-color:Yellow;">
<div style="position: absolute; top: 0px; left: 0px;">A</div>
<div style="position: absolute; top: 0px; right: 0px;">B</div>
</div>
答案 1 :(得分:3)
当一个元素绝对定位时,它将从文档流中取出,这意味着包含元素的行为就好像它不存在一样。因为两个内部div都是绝对定位的,所以外部div没有高度。
答案 2 :(得分:2)
absolute
个定位元素不是父维度的一部分。这意味着如果你有一个auto
高度的元素并且它内部只有一个绝对定位的div,那么它将导致0高度,所以如果你指定了任何background-color
,它将不会有任何{{1}}
如果您想让颜色显示指定高度或不使您的内部div绝对。
答案 3 :(得分:1)
对于两个内部absolute
,您有position
<div>
,因此height
和width
为零。