overflow:scroll 在ios 滚动卡顿

Posted 浪迹灬天涯

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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时才应用。

以上是关于overflow:scroll 在ios 滚动卡顿的主要内容,如果未能解决你的问题,请参考以下文章

解决页面使用overflow: scroll,overflow-y:hidden在iOS上滑动卡顿的问题

[转] 设置div的overflow:scroll,但是在手机上滑动的时候有点卡顿

iOS原生流畅滚动属性overflow-scrolling:touch

使用溢出时减少滚动卡顿:滚动;

iOS 9 `-webkit-overflow-scrolling:touch` 和 `overflow: scroll` 破坏了滚动功能

iOS safari浏览器上overflow: scroll元素无法滚动bug深究