侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

CSS多子选择器与单标签选择器性能

2023-05-03 星期三 / 0 评论 / 0 点赞 / 75 阅读 / 1270 字

理论上CSS子选择器比标签选择器更有效.但是当你有一个类并且你需要在这个类元素中设置特定标签的样式但是它们不是一级孩子时会发生什么? 我们来看一个例子: .styled-table > t

... . . 理论上CSS子选择器比标签选择器更有效.但是当你有一个类并且你需要在这个类元素中设置特定标签的样式但是它们不是一级孩子时会发生什么?

我们来看一个例子:

.styled-table > tbody > tr > td{    // Some cell styles}

VS

.styled-table td{    // Some cell styles}

哪一个是更好的CSS性能实践?

.

解决方法

. 每 MDN:避免后代选择器.~

.

The descendant selector is the most expensive selector in CSS. It is dreadfully expensive—especially if the selector is in the Tag or Universal Category.

.

如果您通过逻辑思考,使用后代选择器,CSS引擎将检查父元素的每个子元素(在本例中为.styled-table)查找匹配项(在本例中为td标记),然后检查这些子项的每个子项等等等等.

但是,使用子选择器,您可以准确地告诉引擎要查找匹配的“路径”.如果它无法在路径中的任何位置找到匹配项(例如,如果.styled-table没有tbody作为其直接子项之一),那么它将放弃选择器.

. . .. ...

广告 广告

评论区