html - html标签上的多个类是否总是影响渲染性能?

标签 html css performance dom render

遇到一个 interesting video关于在 Chrome devtools 中调试渲染性能。在他的类(class)中,Umar 将 html 标签上 CSS 类的更改确定为渲染瓶颈的根源。 Devtools 表明,更改此类可能会影响 html 下面 DOM 中的 3,874 个元素,并触发代价高昂的 recalculate style 操作。

在过去,我将 CSS 类添加到我的 htmlbody 标记中,作为在该级别表达页面状态的便捷方式。

您的 CMS 可能出于同样的目的这样做。例如,在 WordPress 站点中,您可能会看到一堆类,例如 post-template-default single-single-post postid-99999 single-format-standard logged-in category-news subcategory-uk has-hover 在帖子的 body 标签上。

我们应该避免这种做法吗?还是仅当类在 CSS 规则中使用时才会影响渲染性能?

最佳答案

只有应用了 CSS 样式,它才会影响性能。

浏览器供应商花费大量时间试图确保一流的性能,因此处理 CSS 规则以便可以非常有效地扫描它们以进行必要的渲染更改......甚至在应用它们时尝试优化会导致级联的更改回流。

关于html - html标签上的多个类是否总是影响渲染性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46445891/

相关文章:

c# - 限制并发线程等于处理器数量?

javascript - 溢出时页面上移 :hidden css property is set to <html> tag only in Firefox

javascript - Canvas getImageData().data 返回半张图像

html - 大型菜单超出窗口

javascript - 在 updatepanel 中刷新 asp gridview 后,如何重新加载 javascript 和 css?

android - `Content_main.xml` 有什么意义?

javascript - 使用过渡更改宽度时将文本区域 Bootstrap 到视口(viewport)之外

css - Bootstrap 网格内的垂直对齐

html - 对齐 flexbox 内容器底部的元素

java - 我应该尽量减少 "if"语句或 "for"循环的数量吗?