【发布时间】:2015-02-03 21:48:41
【问题描述】:
我正在构建一个页面,该页面需要一些元素,这些元素会在它们被滚动出屏幕时粘在页面顶部。我设法使用position:absolute 做到了这一点。一切都很完美,但它需要动量滚动。我将-webkit-overflow-scrolling: touch 添加到可滚动区域的css 中。这打破了一切。我的带有position:absolute 的粘性元素现在只是随着其余内容滚动。
我的问题是这样的:
为什么-webkit-overflow-scrolling: touch 会影响绝对定位,有没有办法解决这个问题?
更新:每当子元素变为“固定”或“未固定”时,我都会添加警报。警报继续触发,因此样式仍在应用中,只是无法正常工作。这意味着跟踪滚动位置不是问题,而是样式问题。
更新:我尝试使用 position: fixed 而不是 position: absolute 和 -webkit-overflow-scrolling 也打破了这一点
更新:经过大量挖掘,我找到了对这个问题的引用 here 和 here。但是,在这两种情况下,唯一建议的解决方案是重组 DOM,使粘性元素不在可滚动区域中。就我而言,这是一件困难的事情,我宁愿不必这样做。自 ios5 以来事情是否有所进展,或者这仍然是唯一的选择?
【问题讨论】:
-
这似乎仍然是 iOS 10 中的一个问题
标签: javascript css scroll absolute mobile-webkit