Javascript -webkit溢出滚动会破坏绝对定位
我正在构建一个页面,需要有一些元素,这些元素会粘在页面顶部,否则会从屏幕上滚动下来。我使用Javascript -webkit溢出滚动会破坏绝对定位,javascript,css,scroll,absolute,mobile-webkit,Javascript,Css,Scroll,Absolute,Mobile Webkit,我正在构建一个页面,需要有一些元素,这些元素会粘在页面顶部,否则会从屏幕上滚动下来。我使用position:absolute实现了这一点。一切都很完美,但它需要动力滚动。我在可滚动区域的css中添加了-webkit overflow scrolling:touch。这打破了一切。我的带有position:absolute的粘滞元素现在只与其余内容一起滚动 我的问题是: 为什么-webkit溢出滚动:触摸会影响绝对定位,有没有办法解决这个问题 更新:每当子元素变为“已修复”或“未修复”时,我都会添
position:absolute
实现了这一点。一切都很完美,但它需要动力滚动。我在可滚动区域的css中添加了-webkit overflow scrolling:touch
。这打破了一切。我的带有position:absolute
的粘滞元素现在只与其余内容一起滚动
我的问题是:
为什么-webkit溢出滚动:触摸会影响绝对定位,有没有办法解决这个问题
更新:每当子元素变为“已修复”或“未修复”时,我都会添加一个警报。警报继续发出,因此样式仍在应用中,只是不起作用。这意味着它不是跟踪滚动位置的问题,而是样式的问题
更新:我尝试使用position:fixed
而不是position:absolute
和-webkit溢出滚动也打破了这一点
更新:经过大量的挖掘,我找到了关于这个问题的参考资料。但是,在这两种情况下,唯一建议的解决方案是重新构造DOM,使粘性元素不在可滚动区域中。在我的情况下,这是一件很难做到的事情,我宁愿不这样做。自ios5以来,事情有进展吗?还是这仍然是唯一的选择?关于最后一个问题-是的,问题出现在ios5中。在可滚动区域之外提取绝对定位元素对我来说效果很好。谢谢@user3222482,但正如我前面提到的,这不是我的选择,因此无法解决我的问题:(这在iOS 10中似乎仍然是一个问题