這裏是片段(演示上JsFiddle提供)在表格中設置「最大高度」使其高度爲零?
#outer {
display: table;
height: 200px;
width: 100%;
background: gray;
}
#inner {
width: 100%;
background: blue;
max-height: 100%;
}
<div id="outer">
<img id="inner" src="http://jsfiddle.net/img/logo.png">
</div>
父元素使用display:table
(由第三方框架集),我在子元素設置max-height:100%
限制。
然而,如在上面的演示(我使用Chrome 46.0)可以看出,子元素的高度爲「0」不知爲什麼...
當我在父元素中取出display:table
屬性,一切正常再罰款。
我檢查了MDN document for max-height。當提到最大高度的百分比值時,它會說:
百分比是根據生成的框的包含塊的高度計算的。如果沒有明確指定包含 塊的高度(即,它取決於內容 高度),並且該元素沒有被絕對定位,則將百分比 值視爲無。
據我瞭解我的演示中,#inner
元素的包含塊顯式地指定到#outer
,所以在#inner
的max-height: 100%
屬性將等同於height: 200px
。這是真的嗎?有人對我出錯的地方有什麼想法嗎?
謝謝!
使用'min-height'。 http://jsfiddle.net/fb1ddrf8/1/ – Ferrrmolina
@Ferrrmolina我認爲'min-height:100%'相當於'min-height:0',這在這裏沒有任何意義。 –
看看這個答案:http://stackoverflow.com/questions/14262938/child-with-max-height-100-overflows-parent – MCain