使用overflow-x:scroll在IOS上进行加速/减速的平滑原生样式滑动滚动; 可滚动的div使用CSS
使用可滚动的div
.scrollable-div{ overflow-x: scroll; overflow-y: hidden; white-space: nowrap; }
Android设备上的DEMO在滑动上滚动平滑,甚至有加速和减速。
在iPhone上相同的代码,滚动是僵硬的。 当用户释放触摸滚动停止立即。
你如何使iPhone像滚动加速/减速本地风格的Android浏览器一样滚动可滚动的div?
您可以通过使用以下专有的CSS属性在具有overflow
的HTML元素上进行原生样式的滚动:
-webkit-overflow-scrolling: touch;
不过有一些注意事项。 根据元素内部的内容,渲染可能会有些破碎,所以你应该testing它,看看它是否适合你的特殊需求。 我也不确定在指定overflow-y: hidden
时它是否正常工作。 如果没有的话,你应该可以通过使用overflow-x
, overflow-y
和overflow
( auto
似乎不起作用)的不同值来解决这个问题。
如果你需要的话,你可以通过创build第二个内嵌的div
并在其上设置属性来伪造overflow-y: hidden
在div
上。 但我希望这不是必要的。
MarcoAurélio的build议实际上是最好的解决scheme。 如果你设置了overflow-y: scroll
并且添加了-webkit-overflow-scrolling: touch
,那么效果最好。 你会得到一个本地的滚动感觉
好的,这是我的工作原理:
body, html { overflow-x:hidden; -webkit-overflow-scrolling: touch; }