我刚刚注意到很多css插件,当设置页面溢出为隐藏时(例如),他们习惯将它同时设置为html和body,像这样:
html, body {
overflow: hidden;
}
例如,fullpage.js确实喜欢这样。
将它设置为 body 和 html 之间的确切区别是什么?
这是跨浏览器的把戏吗?
最佳答案
这是一个 CSS 技巧,可以防止不需要的滚动条,尤其是水平条。它阻止的是比正在显示的 html 或正文更宽的内容,因此阻止了滚动条。这是一篇深入的 csstricks 文章:https://css-tricks.com/findingfixing-unintended-body-overflow/
但是您会在最后注意到,他提到不建议将溢出隐藏在正文(和 html)上。
在 fullpage.js 的情况下,这很好,因为他们专门尝试隐藏滚动条,以便他们的动画可以引入屏幕外的内容。
关于css - 为什么在 html 和 body 上都设置 `overflow`?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30095598/