2014-10-31 107 views
0

當溢出時,我的容器應該調出一個滾動條。它沒有顯示任何滾動條,當它沒有滿。我爲此使用了「溢出:隱藏」。它可以在Chrome和Mozilla中正常工作,但不會在IE8中發生。我看到溢出操作沒有被觸發。溢出:在IE8中隱藏不觸發

HTML:

<div class="myBlock" style="overflow:hidden; outline:none;">...</div> 

CSS:

.myBlock { 
    overflow-y: scroll; 
    height: 349px; 
} 

我需要一個滾動條只有當y軸我的容器溢出。請讓我知道如果我錯過了什麼。如果我調整窗口的大小,我也會得到IE8中的滾動條。這是一個奇怪的行爲,我的代碼中沒有調整大小的功能。

+0

'overflow-y:scroll;'應該是'overflow-y:scroll!important;'而不是。嘗試一下。 – 2014-10-31 16:29:07

+0

我已經嘗試過了!重要..但沒有任何變化 – luckysaral 2014-10-31 19:05:37

+0

現在,這很奇怪。但說實話,這是我能想出的唯一一件事。嘗試尋找在google上觸發「hasLayout」的方法。並嘗試刪除「overflow:hidden;'。 – 2014-10-31 20:23:06

回答

1

你能提供關於myBlock課程的更多信息嗎?

您的元素是否完全定位?如果是這樣,請嘗試將它改爲相對的,看看是否解決了這個問題 - 有一個奇怪的IE8怪癖可以通過position: relative修復。

此外,請嘗試使用overflow: auto。這是您應該設置的實際屬性,以便在必要時顯示horizo​​ntol/veritcal滾動條,否則將隱藏它。

編輯:

嘗試的overflow-y樣式設置爲overflow-y: scroll !important。這將確保它優先於其他溢出風格。您還可以分別設置overflow-xoverflow-y以獲得所需的效果,爲什麼對我來說看起來不那麼古怪。

+0

我已經提出了相對的立場:但它似乎不適合我。 myBlock的高度爲349px,7個元素適合這一點。只要第七個元素被擊中,那麼滾動條就會出現。 – luckysaral 2014-10-31 19:08:06

+0

溢出:雖然沒有滾動,但自動在IE8中的塊中創建一個幻燈片空間。所有我想要溢出滾動。而且我也在使用Jquery nicescroll進行滾動操作。它已經附加到該div元素只是爲了顯示nicescroll而不是本地滾動條 – luckysaral 2014-10-31 19:10:58