我创建了一个模态。打开模态后,我将使用overflow:hidden;
停止桌面上的滚动到<body>
。它正在工作。
但它不适用于我的iPhone 6s Mobile Safari。
如果在移动版Safari中打开模态时如何阻止滚动?
答案 0 :(得分:24)
据我所知,没有一种很好的方法可以通过CSS实现这一点,而不会影响用户体验。
虽然它是Javascript,而不是CSS,但我发现这样做的最佳方式如下:
// Disable scrolling.
document.ontouchmove = function (e) {
e.preventDefault();
}
// Enable scrolling.
document.ontouchmove = function (e) {
return true;
}
答案 1 :(得分:19)
将其与position: fixed
相结合,在iOS上执行此操作...
overflow: hidden;
position: fixed;