我希望能够滚动整个页面,但不显示滚动条。
在谷歌浏览器中它是:
::-webkit-scrollbar { display: none; }
但是 Mozilla Firefox 和 Internet Explorer 似乎不能这样工作。
我也在 CSS 中试过这个:
overflow: hidden;
这确实隐藏了滚动条,但我不能再滚动了。
有没有办法可以删除滚动条,同时仍然可以滚动整个页面?
请仅使用 CSS 或 HTML。
只是一个工作正常的测试。
#parent{ width: 100%; height: 100%; overflow: hidden; } #child{ width: 100%; height: 100%; overflow-y: scroll; padding-right: 17px; /* Increase/decrease this value for cross-browser compatibility */ box-sizing: content-box; /* So the width will be 100% + 17px */ }
jsfiddle
由于不同浏览器的滚动条宽度不同,最好用 JavaScript 处理。如果这样做Element.offsetWidth - Element.clientWidth,将显示确切的滚动条宽度。
Element.offsetWidth - Element.clientWidth
JavaScript jsfiddle
使用Position: absolute,
Position: absolute
#parent{ width: 100%; height: 100%; overflow: hidden; position: relative; } #child{ position: absolute; top: 0; bottom: 0; left: 0; right: -17px; /* Increase/Decrease this value for cross-browser compatibility */ overflow-y: scroll; }
基于这个答案,我创建了一个简单的滚动插件。