使用webkit-overflow-scrolling滚动时,iOS5图像消失:touch

我以前一直在使用iScroll插件,但想放弃原生的行为。

最初的实现是使用

webkit-overflow-scrolling: auto; 

但是我更新了这个…

 webkit-overflow-scrolling: touch 

使触摸滚动上的运动/惯性成为可能。

与此相关的问题是,当滚动时,导航中包含的列表项完全消失,并且只有在势头rest时才返回。

这个例子可以在这里看到

我过去也遇到同样的问题,如果你需要使用定位元素,试试join-webkit-transform: translateZ(0); 到元素或容器。 这个属性通常会强制浏览器使用硬件加速,而且额外的function很可能不会消失。 无论如何,它为我工作。

更多有用的东西在这里: http : //www.html5rocks.com/en/tutorials/speed/html5/

我们把这一点追溯到有位置的元素:相对或位置:绝对。 在我们删除它们之后,这些项目将在滚动时显示。

像Mark Napthine说的那样,添加下面的css定义:

 -webkit-transform: translateZ(0); 

应该确实强制渲染。 诀窍是把它放在溢出的容器中的每一个不受干扰的元素上。 在我的情况下,这是一个无序的图像包含在一个div与def

 -webkit-overflow-scrolling: touch; 

我把上面的“变换”定义放在包装图像的li标签上,它立即解决了这个问题。 希望这可以帮助…

这是我也跑过的一个错误 – 这个问题似乎涉及到相同的问题: CSS3属性的WebKit溢出滚动:触摸错误

有user1012566build议它与滚动内的元素的位置属性(静态作品,没有别的),虽然我有这个混合的结果。

另一位用户表示,他们已经在bugreport.apple.com网站上报告了这个漏洞,但是报告中的漏洞并不是公开的,所以我们其他人不可能看到官方的反应,或者跟踪进度。

这个bug在iFrames上似乎更糟。 我创build了一个JSFIDDLE来演示它(用iOS 5.0.1设备打开http://jsfiddle.net/KMayN/9/ ),并向苹果发送了一个错误报告。 非常好奇:如果你滚动,你会看到一个空白(没有呈现)的内容…但如果你然后缩放,内容出现! 等等…如果他们回复我,我会保持你最新的。 我尝试了一切(可滚动的iFrame有/无div容器,容器有/无滚动等),根本没有办法:我们必须等待苹果的错误修正。

 -webkit-transform: translate3d(0, 0, 0);