天天看點

前端必知詞彙:渲染引擎

渲染引擎主要用于渲染網頁,負責取得網頁的内容(HTML、XML、圖像等等)、整理訊息(例如加入CSS等),以及計算網頁的顯示方式,輸出至顯示器或列印機。

浏覽器核心由一個渲染引擎和一個JS引擎組成。起初渲染引擎和JS引擎并沒有區分的很明确,後來JS引擎越來越獨立,核心就傾向于隻表示渲染引擎。目前主流的渲染主要有Trident、Gecko、 Webkit、Chromium、Presto等。

Trident(IE核心):目前有很多的雙核浏覽器,其中一核便是Trident, 美其名曰“相容模式”。它的第一個版本随着1997年10月Internet Explorer第四版釋出,之後不斷的加入新的技術并随着新版本的Internet Explorer釋出。在Internet Explorer第七版中,微軟對Trident排版引擎做了重大的變動,除了加入新的技術之外,增加了對網頁标準的支援。其代表浏覽有IE,遨遊,世界之窗浏覽器、Avant、騰訊TT、獵豹安全浏覽器、360極速浏覽器、百度浏覽器等。Window 10釋出後,IE将其内置浏覽器命名為Edge,Edge最顯著的特點就是其新核心Edge HTML。

Gecko(Firefox核心):它的原名是 NGLayout。Gecko 的功能就是讀取 web 内容,如HTML,CSS,XUL,JavaScript, 之後将其渲染到使用者界面上。Mozilla Firefox(火狐浏覽器)采用該核心,Gecko的特點是代碼完全公開,是以,其可開發程度很高,全世界的程式員都可以為其編寫代碼,增加功能。可惜這幾年沒落了,打開速度慢、更新頻繁、豬一樣的隊友flash、神一樣的對手chrome.

Webkit(Safari):Safari是蘋果公司開發的浏覽器。Webkit引擎代碼由KDE的KHTML及KJS引擎的代碼衍生而來。Webkit引擎包含WebCore排版引擎、JavaScriptCore解析引擎以及Drosera調試工具。WebCore:由Webkit項目所開發的布局、渲染、及HTML和SVG的DOM庫。

JavaScriptCore:在Webkit中提供JavaScript引擎的架構。

Drosera:JavaScript調試工具,目前已經被Web Inspector取代。WebKit由多個重要子產品組成:WebCore、JavaScriptCore、WebKit Embedding API、Platform API (WebKit Ports)。其代表浏覽器有遨遊浏覽器3、Apple Safari(Win/Mac/iPhone/iPad)、Symbian手機浏覽器、Android預設浏覽器。

Chromium:自2013年4月3日,Google正式宣布與Webkit結束合作,在Chromium項目中研發Blink渲染引擎(即浏覽器核心),内置于Chrome浏覽器之中。Blink其實是Webkit的分支。大部分國内浏覽器最新版都采用了Blink核心。

Presto(Opera):Presto是挪威浏覽器Opera的“前任”,因為最新的Opera浏覽器早已抛棄進而投入到了谷歌懷抱了。其特點是渲染速度的優化達到了極緻,目前公認網頁浏覽速度最快的浏覽器核心,然而代價是犧牲了網頁的相容性。

資料來源:

維基百科詞條:Web Browser Engine、 Trident 、Gecko 、Webkit 、Presto