我有一个固定的顶部导航栏,当滚动页面内容时,它会停留在所有内容之上。我注意到在Chrome for iOS和Safari独立模式下,固定栏在任何其他元素之前就会在页面卸载时消失。如何使所有元素,无论定位,同时消失?
演示:http://kodu.ut.ee/~b04866/demo/demo.html在Chrome for iOS中加载页面,重复点击刷新。观察固定div如何首先消失,然后是内容的其余部分,最后重绘页面。
答案 0 :(得分:2)
固定元素被提升到合成图层 并且页面卸载时存在相应的错误。
来自http://newscentral.exsees.com/item/528d72c6d22fab46e4eb18e5cb8fece0-0d5a1eca143f58f995dc015e265514cb:
“[...]文档卸载时的合成图层被破坏的速度要快得多 不是[...]的元素这已被WebKit工程师证实是一个错误。“
<强> HOPE:强>
在iOS 8中引入了一个新的更快的Web视图组件:WKWebView
。
Safari使用它。使用Safari时问题消失了:)
我不知道Chrome在iOS 8下是否受到影响。
我比较iOS 8下的常见UIWebView
和新WKWebView
。
使用UIWebView
显示HTML /网页内容的应用仍会受到问题的影响:(