滚动条是指图右侧被红线框起来的部分:html
只要网页内容大于视图,滚动条就会出现。web
通常来讲,只要不是 body 层次的滚动条,使用 overflow: hidden; 就能解决滚动条出现的问题,可是此时页面也会变得没法捲动。chrome
目前网络上已经有诸多能够隐藏非 body 层次的滚动条又可捲动页面的方法,因此本文主要聚焦于如何隐藏浏览器(也就是 body 层次)的滚动条。浏览器
针对不一样的浏览器,有不一样的隐藏滚动条的方法,如下针对三大浏览器 chrome、ie(包括 edge)、Firefox 分别叙述:网络
body::-webkit-sxrollbar {
display: none;
}
body { -ms-overflow-style: none; }
Firefox 是三者中最麻烦的:spa
html { overflow: -moz-hidden-unscrollable; /*注意!若只用 hidden,chrome 的其它 hidden 会出问题*/ height: 100%; } body { height: 100%; width: calc(100vw + 18px); /*浏览器滚动条的长度大约是 18px*/ overflow: auto; }
到此尚未结束,你还要在一些地方加上 width: 100vw;firefox
假设你的 html 长这样:code
<body> <div id="example-1"> <p>难臺子哥式自不家草要计在来也见加正活书。</p> </div> <article id="example-2"> <h1>意家的不称打准无政!</h1> <p>得研河金起里美希孩有人裡人。料低不。</p> <button>处拉</button> </article> </body>
那你的 CSS 就还要再加上:orm
#example-1 { width: 100vw; } #example-2 { width: 100vw; }
综上所述,若是你想让三大浏览器的滚动条都隐藏,而且能够捲动,那你的CSS就至少要长这样:htm
html { overflow: -moz-hidden-unscrollable; height: 100%; } body::-webkit-scrollbar { display: none; } body { -ms-overflow-style: none; height: 100%; width: calc(100vw + 18px); overflow: auto; }
至于 width: 100vw; 要加在何处,就要看你的HTML结构长怎样了。
能够让读者更聚焦于内文,而不会看到滚动条很短就懒得看、跳出网页,或一心急,就把滚动条直接往下拉。换言之,就是强迫读者慢慢地把内容看完。
假如读者想往回看,可能就会要滚好久。因此,若是你想为较长的内文隐藏滚动条,建议应有导览列,让读者能够快速跳转到某处。