2015-06-21 83 views
2

以下是Chrome和Safari的空div:火狐使得空div有高度時,溢出滾動

<div style="overflow: scroll; position: relative;"></div> 

,但在Firefox導致一個div是15像素高。如果我刪除溢出,它會回落到0(就像在chrome/safari中一樣)。我錯過了什麼嗎?有沒有辦法在不刪除溢出屬性的情況下使其成爲0高度?

+0

你是動態變化的高度?你可以設置'height:0px'。儘管我不知道爲什麼Firefox會這麼做的技術原因。這就像Firefox只顯示一些默認的滾動條。 –

+0

是的,不幸的是上下文是動態的。 –

+0

那麼這應該不是一個問題,我想。如果您最初將「height」設置爲「0」,則可以稍後動態更改它。這是你正在尋找的方法嗎? –

回答

2

也許這將解決您的問題:

<div class="scrollable"></div> 

CSS

.scrollable{ 
    overflow:scroll; 
    position:relative; 
} 
.scrollable:empty{ 
    height:0; 
} 
+0

真正有趣的解決方案。我不知道那個選擇器。 –

+0

同意,從來沒有聽說過它,它有[良好的瀏覽器支持](https://developer.mozilla.org/en-US/docs/Web/CSS/%3Aempty#Browser_compatibility)。 – misterManSam