当选择一个元素(id selector(vs)element + id Selector)时,性能最佳的是什么

时间:2015-04-02 15:29:25

标签: css css-selectors

我想知道,当选择要在其上应用样式的元素时,以下哪种方式可以提供更好的性能(即:加载速度)

例如:

  

HTML

<div id="box"> content </div>
  

CSS

/* First way */
#box {color:red;}

/* Second way */
div#box {color:red;}

3 个答案:

答案 0 :(得分:0)

#box速度更快,导致浏览器无需检查元素名称是否等于div。但我不相信速度差异在任何自然条件下都是明显的。

答案 1 :(得分:0)

#box更好,因为它只使用一个选择器(id选择器)

div#box有两个选择器。

https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Writing_efficient_CSS

答案 2 :(得分:0)

框应该更快。但是,不要猜它,测试它!

http://jsperf.com/id-selector-match

div#box

是复合选择器。浏览器将首先匹配所有DIV元素,并从该集合中查找具有属性ID = box的元素。