css - 为什么像 a[title ="home"] 这样的选择器比使用 class 慢?

标签 css performance css-selectors

最佳答案

浏览器实现者优化了最常见的情况。由于类非常频繁地用于匹配样式,因此它们必须尽可能高效地实现这一点。当他们在 CSS 中加载时,他们会索引类以实现这一点。

由于像 title="home" 这样的随机选择器并不经常使用,因此可以使用更简单的搜索来实现它们。它不会对性能产生太大影响,因为它很少被使用。

类在浏览器中也需要特殊处理,因为一个元素可能有多个类,例如class="foo bar baz"。解析文档时,浏览器需要将其拆分,以便它可以将它们中的任何一个与 CSS 选择器匹配。

关于css - 为什么像 a[title ="home"] 这样的选择器比使用 class 慢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18529149/

相关文章:

javascript - 难以理解 DOM API

javascript - 表达和 Sequelize : eager loading belongs to many associations hangs application

python - 最好的高并发Python/Redis服务器

css - 开发者控制台的 CSS 选择器返回错误结果

html - css 2.1中的第一个 child 伪类

html - "Cover"图像不知道 block 的宽度和高度

html - 如何仅在表格内应用边框?

javascript - 如何使用带有复选框和文本输入的 "other"选项

sql - 如何过滤数据库中不存在的模型列的值?

javascript - 根据特异性对一组 CSS 选择器进行排序