overflow:scroll 在ios 滚动卡顿

使用

-webkit-overflow-scrolling 

属性控制元素在移动设备上是否使用滚动回弹效果.

auto

  使用普通滚动, 当手指从触摸屏上移开,滚动会立即停止。

touch

  使用具有回弹效果的滚动, 当手指从触摸屏上移开,内容会继续保持一段时间的滚动效果。继续滚动的速度和持续的时间和滚动手势的强烈程度成正比。同时也会创建一个新的堆栈上下文。

非标准
该特性是非标准的,请尽量不要在生产环境中使用它!

尚未有相关规范。另在Apple提供的Safari CSS 参考文档中有所提及。

只在ios上有用

实际上,Safari真的用了原生控件来实现,对于有-webkit-overflow-scrolling的网页,会创建一个UIScrollView,提供子layer给渲染模块使用。

摘抄:

  1. 从SVN log看,在WebKit 108400版本左右才支持,所以iOS Safari应该是需要5.0。Android则是在4.0以上支持。
  2. 从前端开发的角度讲,只需要知道CSS的属性-webkit-overflow-scrolling是真的创建了带有硬件加速的系统级控件,所以效率很高。
  3. 从实际开发的角度讲,采用这样的做法相对是耗更多内存的,最好是在产生了非常大面积的overflow时才应用。
原文地址:https://www.cnblogs.com/yang-C-J/p/8080605.html