网站建设 了解浏览器如何工作—渲染引擎
从基础架构上我们也可以看到浏览器的重头戏其实在于渲染引擎 (又称排版引擎),很多页面兼容性问题的根源可以说也皆来源于此。360 浏览器 html5 跑分再高(http://html5test.com/),ui 与交互再怎么不一样,内核还是一样的。好了,那我们深入到渲染引擎内部仔细看一下吧。 渲染引擎(the rendering engine)简述 渲染引擎的职责,正如字面上的意思就是负责从服务器端返回的 html,xml,或者 images 等资源的渲染工作并显示给最终用户。通过浏览器 插件(plug-in or browser extension)技术,它也能显示一些其他文档格式的资源,如 pdf,后期的文章会针对这种技术进行一下说明,本章重点描述渲染引擎的首要功能,即通 过渲染引擎显示出经过 css 样式化的 html 和图片结果。 前面已经介绍过,firefox,chrome,safari 包括了两种渲染引擎,火狐浏览器使用 gecko,safari 跟 chrome(后来 opera 跟进)使用 webkit. webkit 是一个开源的渲染引擎,起初只能用于 linux 平台,后来苹果公司 apple 对其源代码进行了扩展改造,使其能运行与 mac 跟 windows 平台,后起之秀 chrome 对其有进行了一些列扩充与推广,使其越来越成为标准流行的渲染网页引擎,webkit 详细介绍可参见 http://webkit.org/。 基本渲染过程 用户请求的资源通过浏览器的网络层到达渲染引擎后,渲染工作开始。每次渲染文档通常不会超过 8k 的数据块,其中基础的渲染过程如下图所示: 渲染引擎首先解析 html 文档,转换为一棵 dom 树,此为第一步。接下来不管是内联式,外联式还是嵌入式引入的 css 样式也会被解析,渲染出另…