html - 滚动时在 iOS Safari 上出现奇怪的阻塞

标签 html ios css safari mobile-safari

在尝试解决浏览器上某些幻灯片的一些问题时,我发现所有浏览器都可以正常工作,但 iOS 版 Safari 却不行。

令人惊讶的是,它不会发生在响应模式下的 Mac Safari 上,它只会发生在 iOS 上。

enter image description here

奇怪的是,一旦到达页面底部,部分内容就会被覆盖。如果您在到达底部后再次滚动,您现在就可以滚动了。如果此时向上滚动,也会发生同样的情况。

可重现的最小测试用例:

html,
body,
main {
  width: 100vw;
  height: 100vh;
  overflow: hidden;
}


#test {
  height: 100vh;
  overflow-x: hidden;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

p {
  padding: 20px 0;
}

标记是这样的:

<body>
  <div id="test">
   <p>Lots of p</p>
   <p>Lots of p</p>
   <p>Lots of p</p>
  </div>
</body>

具有可重现案例的 JSBin 是 this .有谁知道这里发生了什么以及如何解决它?

最佳答案

我遇到了同样的问题,显然这是由于“100vh”和 ios safari 的错误造成的。一旦我更改为“100%”,一切都很好,具体取决于您需要在何处使用视口(viewport)高度,但这可能并不总是可行。

引用:http://webdesignerwall.com/tutorials/css-fix-for-ios-vh-unit-bug

尽管其他站点似乎暗示这可能不再是错误。

关于html - 滚动时在 iOS Safari 上出现奇怪的阻塞,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42486150/

相关文章:

html - 小图像上的工具提示

html - 定义要缩放的 div 的高度

php - 使用隐藏的 div 缓存数据

ios - iOS 进入后台时应用程序崩溃

javascript - 在表单中使用自动完成功能的替代方案

ios - 具有背景和增加的标签区域的 UIButton

iOS UIView 没有立即更新

html - 使图像居中

ios - SFSafariViewController被关闭后到 "forget"访问链接是否正常?

css - Reactjs 特定组件打印与 css