【问题标题】:How CSS specificity affects site performance & page load timeCSS 特性如何影响网站性能和页面加载时间
【发布时间】:2015-01-22 21:19:04
【问题描述】:

请寻找 2 个网站:

两者都是用相似的 HTML、一个 CSS 样式表和 6 个相同的图像准备的。

在第一种情况下,在 CSS 中,很多元素都是用#selector 选择的。 其次,我将大部分(大约 70%)选择器更改为 .selector

使用http://www.webpagetest.org 我为第一种和第二种情况准备了 9 个测试(每组测试已启动 3 次 - 因此:每个网站 27 个测试)。两种情况下的结果非常相似http://take.ms/IIo7w

所以关于这个话题的一些问题:

  1. 是否有可能 CSS 的特殊性对页面加载速度有这么大(~10%)的影响?

  2. 您是否有任何针对 CSS 特异性的在线计算器,可以计算大型样式表的全局分数(例如 > 2000 个选择器)

  3. 也许有人知道为什么星形渲染时间在 .class 选择器的情况下会更高?

提前致谢。

【问题讨论】:

标签: css performance css-specificity


【解决方案1】:

特异性并不真正影响性能。这更像是一个可维护性问题和应用样式的处理优先级。如果可以,请使用类,因为它们更易于维护。

如果你想要一篇关于这个主题的文章,很容易在谷歌上找到,但这里有一篇很有趣

http://css-tricks.com/specifics-on-css-specificity/

【讨论】:

  • 好的,谢谢 - 那么,为什么我在 27 次测试中得到了不同的结果?网站之间唯一的区别是样式表的 CSS 特性。你有什么想法吗?
  • 我认为有一点不同,但这应该会推动您的设计。选择更易维护的类而不是 id 被认为是更好的做法。性能损失可以忽略不计。就像您在问题中所说的“结果相似”。还要考虑一下为什么要使用课程。它是可重复使用的,因此您可以多次使用它。 id 也具有最高的特异性,当您需要显示另一种样式时可能会出现问题。围绕这一点有很多东西需要阅读。例如css.maxdesign.com.au/selectutorial/advanced_idclass.htm
  • @MichałKutra 如果您对它感到满意,请标记为答案。谢谢。
猜你喜欢
  • 2018-11-16
  • 2020-02-13
  • 1970-01-01
  • 1970-01-01
  • 2023-03-11
  • 2022-01-24
  • 1970-01-01
  • 2020-07-07
  • 2018-01-31
相关资源
最近更新 更多