一个完整的浏览器包括浏览器的内核和浏览器的外壳,浏览器的核心部分 —— 内核 主要分为两个部分:渲染引擎(Render Engine)和JS引擎,由于JS引擎越来越独立,所以现在我们所指的浏览器内核只指渲染引擎。
-
渲染引擎: 负责取得网页的内容(HTML、XML、图象等等)、整理信息(例如加入CSS等),以及计算网页的显示方式然后会输出至显示器或打印机。
-
JS引擎: 执行JavaScript代码的程序或解释器,JS引擎可以实现为标准解释器或即时编译器,它以某种形式将JavaScript编译为字节码。
常见的浏览器内核
(1)Trident:是IE的浏览器内核,被设计成一个软件组件,容易添加,但对真正的网页标准支持不是很好,特别是IE9.0以下的浏览器,这一点就特别明显。许多的H5的标签,以及原生的js的语法在它上面的支持度都不是很好。而且还有一定的局限性,只能应用于windows平台。 (2)Gecko:是火狐的内核(是网景公司开发的)有丰富的应用程序接口供使用,可以跨平台在windows,linux,macos上都可以使用,但是缺点是消耗内存资源多,很占内存。 (3)Presto:是欧朋浏览器的内核,渲染速度和优化都很棒,网页浏览的速度也很快,也可以跨平台使用。但是它却以网页的兼容性为代价,而且走的比较偏商业化的道路,很多比较好的功能都会收费。 (4)Webkit:这个相信大家都很熟悉了,没错这就是Google的浏览器内核,它也是众多浏览器中一个开发源码的浏览器内核,它的渲染速度快,源码清晰,可是兼容性不是很好。