22

我以前一直在使用 iScroll 插件,但想放弃它以适应本机行为。

最初的实现是使用

webkit-overflow-scrolling: auto;

但是我将其更新为...

webkit-overflow-scrolling: touch

..启用触摸滚动上的运动/惯性。

问题是导航中包含的列表项在滚动时完全消失,只有在势头停止后才会返回。

可以在这里看到一个例子

4

6 回答 6

17

我过去也遇到过同样的问题,如果您需要使用定位元素,请尝试添加-webkit-transform: translateZ(0);到元素或容器中。此属性通常会强制浏览器使用硬件加速,并且借助额外的功能,您的图像很可能不会消失。无论如何,它对我有用。

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

于 2012-03-12T10:54:11.610 回答
7

我们将其追踪到具有 position:relative 或 position:absolute 的元素。在我们删除它们之后,项目将在滚动时显示。

于 2012-01-26T00:27:58.107 回答
7

就像 Mark Napthine 所说,添加以下 css 定义:

-webkit-transform: translateZ(0);

确实应该强制渲染。诀窍是将它放在溢出容器内的每个未渲染元素上。在我的情况下,它是包含在具有 def 的 div 中的图像的无序列表

-webkit-overflow-scrolling: touch;

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

于 2012-07-24T15:18:04.667 回答
2

这也是我遇到的一个错误 - 这个问题似乎与同一个问题有关: CSS3 property webkit-overflow-scrolling:touch ERROR

那里 user1012566 建议它与滚动内元素的位置属性有关(静态工作,没有其他工作),尽管我对此有不同的结果。

另一位用户说他们已经在 bugreport.apple.com 网站上报告了它,但报告的错误在那里并不公开,所以我们其他人不可能看到官方回复(如果有的话)或跟踪进度。

于 2011-11-16T13:51:03.760 回答
2

这个错误在 iFrame 中似乎更糟。我创建了一个 JSFIDDLE 来演示它(使用 iOS 5.0.1 设备打开http://jsfiddle.net/KMayN/9/)并向 Apple 发送了一个错误报告。很好奇:如果你滚动,你会看到一个空白(未渲染)的内容......但是如果你然后缩放,内容就会出现!等等...如果他们回复我,我会及时通知您。我尝试了所有方法(带/不带 div 容器的可滚动 iFrame、带/不带滚动的容器等...),根本没有办法:我们必须等待 Apple 修复错误。

于 2011-11-26T03:07:06.753 回答
0
-webkit-transform: translate3d(0, 0, 0);
于 2012-10-10T17:11:09.950 回答