2014-01-06 48 views
10

我有以下HTML和CSS在Firefox和Chrome中表現完全不同。在firefox中不工作的CSS高度100%

JSFiddle

.container { 
 
    width: 200px; 
 
    height: 50px; 
 
    border: 1px solid black; 
 
    display: inline-table; 
 
} 
 

 
.content { 
 
    background-color: red; 
 
    width: 30%; 
 
    height: 100%; 
 
}
<div class="container"> 
 
    <div class="content"></div> 
 
</div> 
 
<div class="container"> 
 
    <div class="content"></div> 
 
</div>

在Chrome中正確顯示的,但不能在Firefox。

鉻:
enter image description here

火狐:
enter image description here

通過在Firefox檢查內容DIV,高度爲0

它爲什麼會在Chrome和Safari的工作,但不在Firefox? 我注意到刪除display: inline-table將工作,但容器div將堆疊,而不是內聯。

+2

更改顯示:內聯表顯示:inline-block的得到了它在這兩個瀏覽器爲我工作。 – ccnokes

回答

6

嘗試更改display: inline-table;display: inline-block;

0

,因爲Firefox是鎖定到內部內容的大小的元素不顯示正常工作,但我敢肯定你已經收集到了。

我注意到容納內部的容器高度固定爲50.如果外部容器的高度固定,則可以匹配內部元素的高度。

我知道這不是基於百分比的動態解決方案,但它是一種解決方法。

0

嘗試此其工作

position: absolute; 
top: 0px; 
bottom: 0px; 
width: 50px; 
+0

爲什麼,在哪裏?請具體說明。 –

+0

可能會幫助你 https://support.mozilla.org/en-US/questions/759359 –

+1

這個參考.container元素,適用於我。這裏的技巧是省略高度聲明並使用top:0和底部:0代替。 – mtness