css性能让javascript变慢
一个线程=》js解析
一个线程=》UI渲染
js从代码当中获取到相关的渲染结果
频发触发重绘和回流,会导致ui频繁渲染,最终导致js变慢
回流
当render tree中的一部分(或全部)因为元素的规模尺寸,布局,隐藏等改变而需要重新构建。这就称为回流(reflow)当页面布局和几何属性改变时就需要回流
重绘
当render tree中的一些元素需要更新属性,而这些属性只是影响元素的外观,风格,而不会影响布局的,比如background-color。则就叫称为重绘。
回流必将引起重绘而重绘不一定会引起回流
触发页面重布局的属性
盒子模型相关属性会触发重布局
定位属性及浮动也会触发重布局
改变节点内部文字结构也会触发重布局
width top text-align
height bottom overflow-y
padding left font-weight
margin right overflow
display position font-family
border-width float line-height
border clear vertival-align