卖坚果的怪叔叔 卖坚果的怪叔叔
  • 首页
  • 技术
  • 生活
  • 记录
  • 朋友
  • 常用代码
  • 工具箱
  • 关于
首页 › 技术 › 页面的重绘(repaint)与回流(reflow)

页面的重绘(repaint)与回流(reflow)

坚果大叔
2018-12-12 14:16:10技术阅读 601

文章目录[隐藏]

  • 1. 回流(reflow)
  • 2. 重绘(repaint)
  • 3.回流的成本高于重绘
  • 4.回流一定重绘,重绘不一定会回流
  • 5.如何优化

1. 回流(reflow)

当dom中render树中的节点或者元素的大小,边距,数量发生变化后,导致页面需要重新构建的过程叫做回流。另外如果浏览器获取某些元素属性也会触发回流,例如:offsetTop,offsetLeft等。

2. 重绘(repaint)

当dom中元素的属性,例如:颜色,字体样式等发生变化时,只需要更改该元素的时候叫做重绘。

3.回流的成本高于重绘

4.回流一定重绘,重绘不一定会回流

5.如何优化

1.避免单个修改节点样式,尽量一次性修改
2.使用DocumentFragment将需要多次修改的DOM元素缓存,修改好后一次性替换
3.将需要多次修改的DOM元素设置成display:none,修改完成后在改回来。
4.避免读取上述的那些属性
5.将复杂的dom节点脱离文档流。


微信扫描下方的二维码阅读本文

repaint
赞赏 赞(0)
本文系作者 @坚果大叔 原创发布在 卖坚果的怪叔叔。未经许可,禁止转载。
map,filter,forEach的区别和用法
上一篇
Vue响应式原理
下一篇
近期文章
  • 3月已到月底,今年已过四分之一!
  • 使用encodeURI出现URI malformed报错?
  • 周末,公园,人多!!!
  • Element-Plus的一点疑难问题~
  • 一些AList站点以及有趣的网址
使用encodeURI出现URI malformed报错?
2023-03-14 16:38:10
460 0 0
Element-Plus的一点疑难问题~
2023-02-28 17:21:19
489 3 0
微信小程序批量提交后台审核
2023-01-29 17:56:58
967 0 2
Home
2023-01-19 13:49:05
322 0 1
  • 0
博主

一枚佛系前端开发,会一丢丢摄影,喜欢折腾,爱好美食。分享点前端技巧、笔记以及各种有趣的APP和资源教程♥♥

友链
Lieme
公众号
坚果大叔 执行上下文 卖坚果的怪叔叔
Copyright © 2017-2023 卖坚果的怪叔叔. Designed by nicetheme.

苏ICP备18048410号-2
  • 首页
  • 技术
  • 生活
  • 记录
  • 朋友
  • 常用代码
  • 工具箱
  • 关于
# WordPress # # CSS #
坚果大叔
233
文章
65
评论
174
喜欢