理论
样式计算
第一步,匹配一系列的样式选择器
第二步,取出所有匹配后的样式规则,构造RenderStyle
步骤
我们的解决思路是
-
减少样式计算的相互作用,即样式重新计算
什么是 Recalculate Style?在浏览器每一帧的渲染流程中,由于 DOM 增删改等因素变化,需要重新计算受影响节点的样式,这一过程在 Chrome DevTools 中被称为 Recalculate Style。我们在排查系统页面性能问题时发现,在影响 DOM 节点数过多的情况下,Recalculate Style 通常会花费较长的时间。 -
使用性能更好的样式选择器
保持简单,使用class选择器。如果的样式选择器存在逻辑.content:nth-last-child(-n+1) .text
,浏览器就需要花时间去计算你说的是哪个元素。
edge可以在这里查看选择器的性能 -
减少样式计算涉及的元素数量