最快的CSS选择器?
假设我有一个带有ID popup的弹出窗口,其中有两个按钮,一个在左侧,一个在右侧,带有类popupbutton,以下哪种css规则最有效:最快的CSS选择器?,css,performance,css-selectors,Css,Performance,Css Selectors,假设我有一个带有ID popup的弹出窗口,其中有两个按钮,一个在左侧,一个在右侧,带有类popupbutton,以下哪种css规则最有效: #popup a.popupbutton #popup .popupbutton a.popupbutton .popupbutton .popupbutton是最快的选择器,请在CSS呈现上查看google .popupbutton 上课会更快。但当你开始认真思考的时候,你正在为自己节省20-50毫秒的时间,这可能有关系,也可能没有关系 这里有
#popup a.popupbutton
#popup .popupbutton
a.popupbutton
.popupbutton
.popupbutton是最快的选择器,请在CSS呈现上查看google
.popupbutton
上课会更快。但当你开始认真思考的时候,你正在为自己节省20-50毫秒的时间,这可能有关系,也可能没有关系
这里有一个非常好的测试,您可以在这里阅读,它可以查看多个浏览器之间css选择器速度的差异:
所有浏览器的平均速度减慢是50毫秒,如果我们看看大的浏览器IE 6和7,FF3,平均增量只有20毫秒。对于今天70%或更多的用户来说,改进这些CSS选择器只会带来20毫秒的改进
从文章中可以看到,选择器速度的差异非常小,这些测试针对的是非常健壮的DOM示例。。popupbutton是最快的。
但是请记住,a.popupbutton与.popupbutton不同。他们大部分时间都会做同样的事情,但是考虑到这个例外:
a:link { color: red; }
.popupbutton { color: green; } /* Won't work */
a.popupbutton { color: green; } /* Will work */
你想选择什么?Idk如果你需要关注css的速度,你设计了多少样式?这是不是因为人们认为它无关紧要而被否决了?优化CSS选择器几乎肯定是浪费时间,但一个问题本身可能很有趣。不过,也许不是因为你可能认为的原因。这完全是因为选择器是从右向左应用的。就是这样,这在大多数情况下都会发生,这里有一个更详细的答案。。。同意!CSS选择器的效率只在选择大型元素集时才起作用。把它看作是一个微小的提升,不用担心。