美文网首页
浏览器渲染机制

浏览器渲染机制

作者: Zero_R | 来源:发表于2019-02-17 16:39 被阅读0次

1. DOCTYPE:

DOCTYPE是用来声明文档类型和DTD规范的,一个主要的用途便是文件的合法性验证。


HTML5声明方式:

<!DOCTYPE html>


HTML4声明方式:

HTML4分为Strict(严格模式)和Transitional(宽松模式)

严格模式

包含所有HTML元素和属性,但不包含展示性和弃用的元素
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

宽松模式

包含所有HTML元素和属性,包含展示性和弃用的元素
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loosse.dtd">


2. 浏览器渲染过程:

Webkit渲染引擎工作流程

image
  1. 解析HTML生成DOM树。
  2. 解析CSS生成CSSOM规则树。
  3. 将DOM树与CSSOM规则树合并在一起生成渲染树。
  4. 遍历渲染树开始布局,计算每个节点的位置大小信息。
  5. 将渲染树每个节点绘制到屏幕。

重排Reflow:

定义:

DOM结构中各个元素都有自己的盒模型,这些都需要浏览器根据各种样式来计算并根据结果将元素放到该出现的位置,这个过程称之为reflow

触发条件:
  1. 增加、删除、修改DOM节点时,会触发Reflow或Repaint。
  2. 移动DOM位置、动画。
  3. 修改CSS样式。
  4. Resize窗口(移动端除外)、滚动。
  5. 修改网页默认字体。

重绘Repaint:

定义:

当各种盒子的位置、大小及其他属性都确定后,浏览器把这些元素按照各自的属性绘制一遍,于是页面出现,这个过程称之为repaint

触发条件:
  1. DOM改动。
  2. CSS改动。
  • 只要页面内容显示有变化则触发repaint 。
如何减少repaint频率:

改变多个DOM节点时使用DocumentFragment文档片段节点,将需要改变的多个节点全部放到DocumentFragment中一次改变DOM,这样只会触发一次repaint,优化性能。

相关文章

  • 略知一二之浏览器渲染原理

    浏览器渲染原理 推荐相关阅读文章 浏览器页面渲染机制,你真的弄懂了吗? 关键渲染路径 深入浅出浏览器渲染原理 [译...

  • 前端渲染机制及重绘/回流

    渲染机制 渲染步骤 浏览器的渲染机制一般分为以下几个步骤: 1. 处理 HTML 并构建 DOM 树。2. 处...

  • 浏览器原理相关视频课程

    大话浏览器渲染原理浏览器渲染原理和打开网页机制HTTPS 网络协议原理解析从零开始,彻底掌握浏览器渲染原理深入V8...

  • 重绘(redraw或repaint),重排(reflow)

    浏览器运行机制图: 浏览器的运行机制:layout:布局; 1、构建DOM树(parse):渲染引擎解析HTML文...

  • 网页的渲染机制

    网页的渲染机制 参考文章:ScriptJava——了解HTML页面的渲染过程浏览器加载,解析,渲染的过程HTML渲...

  • 网页的渲染机制

    网页的渲染机制 参考文章:ScriptJava——了解HTML页面的渲染过程浏览器加载,解析,渲染的过程HTML渲...

  • 2020-07-23 18课 CSS动画+浏览器渲染原理

    浏览器渲染原理 渲染机制 浏览器加载HTML代码后解析HTML代码来构建HTML树(DOM) 加载CSS代码后解析...

  • 重绘和重排

    参考 浏览器渲染机制 浏览器采用流式布局模型(Flow Based Layout)。 浏览器会把 HTML 解析成...

  • 网页渲染机制

    网页通过浏览器展示在我们面前,说网页的渲染机制就是说浏览器怎么渲染页面的。市面上浏览器主流浏览器chrome,fi...

  • 重绘(redraw或repaint),重排(reflow)

    浏览器运行机制图: 浏览器的运行机制: 1、构建DOM树(parse):渲染引擎解析HTML文档,首先将标签转换成...

网友评论

      本文标题:浏览器渲染机制

      本文链接:https://www.haomeiwen.com/subject/gjtweqtx.html