2017-08-04 106 views
1

我有幾個元素overflow: auto。它工作很好。在macOS上,滾動條在用戶不滾動時自動隱藏並顯示在滾動條上。如何自動隱藏Windows瀏覽器上的滾動條

在窗口和任何瀏覽器上,滾動條總是可見的。它做了一個醜陋的渲染。

那麼當用戶不滾動時,如何在每個操作系統和每個瀏覽器上自動隱藏滾動條?

我知道有很多類似的問題,但我還沒有找到一個合適的答案

+0

我認爲這取決於瀏覽器如何處理滾動條,並且您可以做的事情不多。唯一真正的crossbrowser解決方案是用JS編寫自己的滾動條。 –

+0

這是否給你可以使用的東西:https://stackoverflow.com/q/3296644/125981 –

回答

4

perfect-scrollbar

簡約主義的完美定製的滾動條插件

它與幾乎所有的網絡瀏覽器,包括Internet Explorer。

+1

不錯,但我想找到一些東西,而不必使用js –

2

我發現了一些東西!我從來沒有想過這可能是如此簡單:

.my-elem { 
    overflow: hidden 
} 

.my-elem:hover { 
    overflow: auto 
} 
1
<style type="text/css"> 
body { 
    overflow:hidden; 
} 
</style> 

上面的代碼隱藏水平和垂直滾動條。

由於每個瀏覽器都有自己默認的「用戶代理」的樣式表,你可能需要做一個CSS重置是重置所有的HTML元素一致的基準的造型。那麼你的HTML在所有瀏覽器上都會顯示相同。您也可以標準化。 Normalize.css保留有用的默認值,而不是「不重疊」的所有內容。