css – 如何确定iOS Safari中造成“样式无效”的原因?

前端之家收集整理的这篇文章主要介绍了css – 如何确定iOS Safari中造成“样式无效”的原因?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在iOS上滚动时,我正在追赶性能问题.在touchstart和touchend上,Safari无效,然后重新计算样式,这在滚动响应之前导致稍微延迟. Safari的工具有一个“启动器”列,但在我的测试中它是空白的.

我试过了:

>应用意志变换:变换;或transform:translateZ(0);在滚动元素上.这极大地帮助了Chrome,但对iOS Safari却没有任何作用.分析器仍报告正在重新计算样式.
从DOM中删除所有具有position的元素:fixed;
>检查分析器报告的每一行Javascript(我的测试中只是jQuery和Angular核心代码),看看它们是否在Paul Irish’s list of things that force layout/reflow
>要在Android上重现它,所以我可以使用Chrome的恒星开发工具,没有成功.这个问题只会影响iOS Safari,只能从桌面Safari中进行调试.

如何确定在iOS Safari中导致我的样式无效的原因?


解决方法

当我调试一个类似的问题时,这对我有用.

>获取您要查看的事件的开始时间.应该在从截图的视图中的第二列到最后一列.
>单击名为“框架”的“事件”选项卡旁边的选项卡.
>找到具有最接近的匹配开始时间的框架. (有时不完全)
>展开框架可以让您看到事件之前/之后发生的事件.在最后一列“位置”,您可以看到问题所在.如果已填写,您可以点击向右箭头查看导致该行的行.但是它并不总是在列中有东西.我必须先看一下以前的事件,试图找出问题所在.

这不完美,但是我已经能够使用这种方法来调试我遇到的问题.希望这可以帮助!

猜你在找的CSS相关文章