解决使用overflow:scroll;样式在苹果ios上滚动卡顿

给元素使用overflow:scroll;后在苹果手机浏览器上滚动时会卡顿,解决方法是:

在overflow:scroll;滚动的容器中增加样式:

-webkit-overflow-scrolling: touch;
或者给body增加:
body {overflow-x: hidden}
如果body和html使用了height: 100%;就把height: 100%;去除掉。

另外:

在苹果手机上使用了-webkit-overflow-scrolling:touch;后,可能会导致使用position:fixed;固定定位的元素,随着页面一起滚动,只有滚动停止时才会恢复原位,但是如果不用-webkit-overflow-scrolling:touch;这个属性的话,使用overflow-y:scroll;属性的盒子滑动就会非常不流畅。

解决方法:

使用overflow-y属性的元素不应该和固定元素在一个层级,使用overflow-y属性的元素外面加一层和固定元素在同一层级可以解决该问题。


关键词: css