如何禁用body
的滚动条,但让它在屏幕上保持可见?举个例子看看Facebook的影院模式:取消激活身体滚动但保持滚动条
回答
这是您将定义强制滚动条唯一的CSS:
html{
overflow-y: scroll;
}
滚动条将内容是否比窗口小,被禁用,因此你将不得不使用一些脚本来调整身体至少为1px
小于窗口的高度:[?只是禁用滚动不能掩盖它]
$("body").css({ "height" : ($(window).height() - 1) + 'px', "overflow": "hidden" });
这确实做得很好。然而,不是使用JS来定义身高,我发现它与CSS一起使用更简洁。随着一点玩耍,我发现了两种选择: 应用位置:固定; html标签,以及overflow-y:scroll;或者,如果你正在使用一个已经为你的身体标记添加了overflow:hidden的框架(我假定大多数人搜索这个问题,因为overflow:hidden;在body上),你可以用100vh 。 当模式关闭时,不要忘记删除这些样式。 – mizurnix
好的。你可以添加你自己的答案,所以我可以放弃它。 – rcdmk
谢谢,但我还没有完成我的解决方案:)我试图将这应用到一个很长的页面,所以大多数时间用户将首先滚动然后打开模式和所有我的选项导致滚动条仍然活跃,或滚动用户顶部,然后停用滚动条。我检查了Facebook的作用,他们使用固定位置,并在内容包装器(不包括正文)上添加顶部:xxxxx像素(基于已经滚动的距离)。当我完成时,我可以添加这个答案 – mizurnix
overflow-y: scroll;
这应该是你在找什么。
它不会**禁用**滚动条 –
那只是总是显示滚动条,但不禁用滚动,是吗? –
哦,我以为你只是想离开滚动条,即使页面上没有足够的内容。如果内容比浏览器屏幕大,你想如何滚动? – Chad
- 1. 隐藏滚动条,但保持滚动本地的感觉
- 2. 取消激活或删除HTML上的滚动条
- 3. 滚动功能激活滚动
- 4. 滚动条和isScrollContainer属性不激活滚动直线布局
- 5. 在div mouseover上锁定身体滚动但保持位置
- 6. 如何使滚动条在不活动滚动时消失?
- 7. 停用和激活身体滚动在手机浏览器
- 8. 滚动锚点未激活
- 9. 滚动到身体
- 10. jQuery:如何滚动身体而不显示滚动条?
- 11. 隐藏滚动条会导致身体向上滚动
- 12. 防止身体滚动,但允许叠加滚动
- 13. 谷歌MDL瀑布头不滚动滚动和身体右侧的滚动条
- 14. 滚动条消失
- 15. nanoScroller显示滚动条但不滚动
- 16. 可滚动但不滚动条
- 17. 双滚动条,但没有滚动
- 18. 在滚动上激活字母动画
- 19. 水平滚动时保持垂直滚动条在视图中
- 20. 根据滚动条位置保持div的滚动位置
- 21. Javascript和CSS:隐藏滚动条,保持滚动事件工作
- 22. GTK滚动窗口 - 保持滚动条在底部
- 23. 禁用滚动条,同时保持滚动
- 24. ListView中的复选框在滚动时取消激活
- 25. 取消激活砌体动画
- 26. 使用jQuery隐藏div滚动条,但保留滚动?
- 27. JavaFX滚动条自定义。消除额外的广场,当两个滚动条被激活
- 28. 如何让CListCtrl保持滚动条?
- 29. AS3 - 将滚动条保持为空ScrollPane
- 30. 双滚动条保持在Windows Broswers
的可能的复制(https://stackoverflow.com/questions/8701754/just-disable-scroll-not-隐藏它) –