美文网首页饥人谷技术博客
浏览器的渲染机制

浏览器的渲染机制

作者: JRG_Orange | 来源:发表于2017-04-24 22:09 被阅读0次

浏览器的基础结构

在了解浏览器的渲染机制之前我们先熟悉一下浏览器的基础结构,一般我们把浏览器的基础结构分为一下七个部分:

  1. 用户界面(User lnterface):即用户看到的及与之交互的功能组件,比如地址栏,返回,前进按钮等;
  2. 浏览器引擎(Browser engine):负责控制和管理下一级的渲染引擎;
    3.渲染引擎(Rendering engine):负责解析用户请求的内容(如HTML或XML,渲染引擎会解析HTML或XML,以及相关CSS,然后返回解析后的内容);
    4.网络(Networking):负责处理网络相关的事物,如HTTP请求等;
    5.UI后端(UI backend):负责绘制提示框等浏览器组件,其底层使用的是操作系统的用户接口;
    6.JavaScript解释器(JavaScript interpreter):负责解析和执行JavaScript代码;
    7.数据存储(Data storage):负责持久存储如:cookie和缓存等应用数据。

浏览器内核

各大浏览器在内核上有一定差别,大致可以分为以下几内:

  • Trident内核: 比如IE;
  • Webkit内核:比如 Chrome,Safari
  • Geckon内核: 比如FireFox

浏览器的渲染机制

Webkit内核浏览器渲染机制
以Webkit内核浏览器为例,浏览器的渲染可以分为以下几步:
1.构建DOM树(DOM tree):在刚开始渲染时,浏览器会自上而下解析HTML文档生成DOM节点树,也叫做内容树(content tree);
2.加载解析样式,构建CSSOM树(CSS Object Model tree);
3.加载并执行JavaScript代码;
4.根据DOM树和CSSOM树,生成渲染树(render tree)
5.布局(layout):根据渲染树将节点树的每一个节点布局在屏幕的正确位置;
6.绘制(painting):遍历渲染树绘制的所有节点,为每一个节点适用对应的样式,这一过程是通过UI后端模块完成的。
Gecko内核浏览器渲染机制
Gecko浏览器和Webkit浏览器渲染流程大致相同,不同的是:
1.Webkit浏览器中的渲染树(render tree),在Gecko浏览器中对应的则是框架树(frame tree),渲染对象(render object)对应的是框架(frame);
2.Webkit中的布局(Layout)过程,在Gecko中称为回流(Reflow),本质是一样的,后文会解释回流的另一层含义–重新布局;
3.Gecko中HTML和DOM树中间多了一层内容池(Content sink),可以理解成生成DOM元素的工厂。
点击查看更多浏览器的工作原理

相关文章

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

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

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

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

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

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

  • 网页的渲染机制

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

  • 网页的渲染机制

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

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

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

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

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

  • 网页渲染机制

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

  • 重绘和重排

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

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

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

网友评论

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

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