我一直试图解决这个问题一段时间,找不到解决方案。
这是我的代码
CSS
.parent{
width:100px;
display:table;
border:1px solid green;
}
.child{
width:50px;
background:blue;
display:table-cell;
height: inherit;
}
.child + .child{
background:red;
}
HTML 的
<body>
<div class="parent">
<div class="child">a <br/> b<br/> b<br/> b<br/> b<br/> b<br/> b</div>
<div class="child" style="border: 2px dashed black">
<fieldset style="height:100%;">a</fieldset>
</div>
</div>
</body>
我希望第二个孩子fieldset
中的div
获取父div
的高度。因此,fieldset
的高度应该等于它所在的height
个div
。
我该怎么做?
答案 0 :(得分:2)
声明父级高度时,百分比高度有效。在您的情况下,height: inherit;
但它从其父级名为.parent
继承 nothing 。在height
上设置.parent
会修复它。 (或者,您可以将名为height
的孩子的.child
设置为inherit
以外的其他内容。)
HTML:
<div class="parent">
<div class="child">a <br/> b<br/> b<br/> b<br/> b<br/> b<br/> b</div>
<div class="child" style="border: 2px dashed black">
<fieldset style="height:100%;">a</fieldset>
</div>
</div>
CSS:
.parent{
width:100px;
display:table;
border:1px solid green;
height: 100% /* <-- added height to parent */
}
.child{
width:50px;
background:blue;
display:table-cell;
height: inherit;
}
.child + .child{
background:red;
}
答案 1 :(得分:1)
如果您希望fieldset始终占用其父div的整个区域,请将其设为
.child2 {
position: absolute;
left: 0;
right: 0;
top: 0;
bottom: 0;
}
(根据需要修复值)。