1. 浏览器内核
即渲染引擎,负责对网页语法的解释并渲染网页,其决定了浏览器如何显示网页内容以及页面的格式信息。不同的浏览器内核对网页的语法解释也不同,因此网页开发者需要在不同内核的浏览器中测试网页的渲染效果。
浏览器内核可以分成两部分:渲染引擎(Layout Engineer 或 Rendering Engine)和 JS 引擎。渲染引擎负责取得网页的内容( HTML、XML、图像等)、整理讯息(加入 CSS 等),以及计算网页的显示方式,然后输出至显示器或打印机。JS 引擎则是解析 Javascript 语言,执行 javascript 语言来实现网页的动态效果。最开始渲染引擎和 JS 引擎并没有区分的很明确,后来 JS 引擎越来越独立,浏览器内核就倾向于只指渲染引擎。
2. 五大内核
(1) Trident
IE内核,是微软在 Mosaic("马赛克",人类历史上第一个浏览器,从此网页可以在图形界面的窗口浏览)代码的基础之上修改而来,其接口内核设计的相当成熟,国内很多的双核浏览器的其中一核便是 Trident,美其名曰 "兼容模式"。
Window10 发布后,IE 将其内置浏览器命名为 Edge,Edge 最显著的特点就是新内核 EdgeHTML。
(2) Gecko
Mozilla FireFox(火狐浏览器)内核,其特点使代码完全公开,因此,其可开发程度很高,全世界的程序员都可以为其编写代码,增加功能。但打开速度慢,升级频繁。
(3) Webkit
Webkit 的鼻祖是 Safari,Safari 是苹果公司开发的浏览器,使用了KDE(Linux桌面系统)的 KHTML 作为浏览器的内核,可以说 Webkit 是 KHTML 的一个开源的分支,KHTML 拥有清晰的源码结构和极快的渲染速度。。
(4) Chromium / Blink
Chrome(谷歌浏览器)内核,Chromium 来自开源引擎 Webkit,却把 Webkit 的代码梳理得可读性提高很多,但由于种种原因,后来Google 决定在 Webkit 代码的基础上研发更加快速和简约的渲染引擎,并逐步脱离 Webkit 的影响,创造出一个完全独立的 Blink 引擎。
(5) Presto
Presto 是挪威产浏览器 Opera 的 "前任" 内核,最新的 Opera 浏览器早已将之抛弃从而投入到了谷歌大本营。
Opera 的里程碑作品是 Opera7.0,使用了 Opera Software 自主开发的 Presto 渲染引擎,取代了旧版使用的 Elektra 排版引擎。该款引擎的特点是渲染速度优化达到了极致,但牺牲了网页的兼容性。
Presto 加入了动态功能,例如网页或其部分可随着 DOM 及 Script 语法的事件而重新排版。Presto 在推出后不断有更新版本推出,使不少错误得以修正,以及阅读 Javascript 效能得以最佳化,并成为当时速度最快的引擎。
转载来源:https://www.jianshu.com/p/f4bf35898719
来源:https://www.cnblogs.com/xiaoqianqian/p/12208046.html