效率低下的CSS选择器建议

时间:2011-05-16 04:29:44

标签: html css browser css-selectors

我有两个关于重构旧CSS以提高性能的问题。

(1)以下与打印机相关的 CSS包含在common.css中,有些元素应用了选择器。它会影响浏览器渲染性能吗?换句话说,除了打印页面之外,浏览器是否使用CSS来检查元素是否与选择器匹配?

@media print
{
    body * {visibility:hidden}
    #xView, #xView * {visibility:visible; }
    #xView {position:fixed;}
}

(2)如何评估refacotring后的性能提升?

感谢。

2 个答案:

答案 0 :(得分:2)

这不是一个很大的代码,所以谈论性能似乎有点偏离主题,但仍然 - 如果你使用“*”选择器,它将不会很快。如果你设置一个容器的可见性而不是内部的每个元素,那会好得多。

关于性能测试的主题 - 一个很好的阅读:

http://www.stevesouders.com/blog/2009/03/10/performance-impact-of-css-selectors/

http://blog.archive.jpsykes.com/151/testing-css-performance/

您还可以在Firebug中测试页面加载时间,但我不知道结果的准确性。

答案 1 :(得分:1)

1:不,print CSS仅在打印时应用,因此在打印前不会对其中的任何代码进行检查。

2:要测量CSS效果,请查看此test harness for CSS

相关问题