gpt4 book ai didi

css - 子选择器和后代选择器在性能上有区别吗?

转载 作者:行者123 更新时间:2023-11-28 09:08:01 24 4
gpt4 key购买 nike

我可以使用子组合器 > 或仅使用表示任何后代的空格来编写 CSS 选择器。例如,我有这个 HTML 代码:

<span id='test'>
<a href="#">Hello</a>
</span>

我可以通过以下两种方式编写我的 CSS 代码:

#test > a {
...
}

#test a {
...
}

关于性能,编写以下 CSS 代码的最佳方法是什么?

最佳答案

Browsers parse selectors from right to left .

然后,如果您使用 #test > a,对于页面中的每个 a 元素,浏览器都会检查其父元素是否有 id="test".

但是如果您使用#test a,对于页面中的每个a 元素,浏览器都会检查它的一些祖先是否有id="test"。文档中不应有很多这样的元素,因此浏览器可能必须检查每个 a 的所有祖先。

我没有做过任何测试,但我预计检查所有祖先比只检查父级要慢。

所以可能 #test > a 更快。​​

关于css - 子选择器和后代选择器在性能上有区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34695477/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com