css - #parent>*/asterisk 与#parent>div

标签 css performance css-selectors

使用子选择器匹配 任何 子选择器,它恰好总是一个 div,使用 */asterisk 选择器还是简单地 会更快分区?因为它总是一个 div 和一个 child ,除了性能方面,这两个选择器都不合适。

HTML(显然不止两种)

<div id="parent">
    <div>...</div>
    <div>...</div>
</div>

CSS

#parent>* {
    padding: 2px 1em;
    }

#parent>div {
    padding: 2px 1em;
    }

如有问答请见谅,通配符很难搜索。

最佳答案

CSS 选择器是从右到左计算的。

因此对于 #parent > *,浏览器必须检查选择器的其余部分是否匹配页面上的每个元素,无论在 DOM 树中的哪个位置它位于;

而使用 #parent > div 时,浏览器可以在确定当前尝试确定选择器是否适用的元素不<时立即停止此过程/em> div 元素。

所以是的,#parent > div 在这种情况下在性能方面是完全可取的。

关于css - #parent>*/asterisk 与#parent>div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25715595/

相关文章:

html - 将 div 背景与其父级对齐

python - python中的同时模拟

html - 无法找出正确的 :child Selector

jQuery:选择属性大于值的所有元素

Ruby 数组 find_first 对象?

Selenium 元素选择器 - 我认为 xPath 最慢?

html - CSS 和在 div 中定位 span 元素

css - 如何将此 div 设置为显示其 float 内容的最小可能宽度?

html - 仅使用 CSS 的砌体式布局

php - 错误导致页面关闭并重新打开 - PHP/HTML