瀏覽器內(nèi)核
成都創(chuàng)新互聯(lián)從2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站設(shè)計(jì)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元阜新做網(wǎng)站,已為上家服務(wù),為阜新各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:13518219792
Rendering Engine,中文翻譯很多,排版引擎、解釋引擎、渲染引擎,現(xiàn)在流行稱為瀏覽器內(nèi)核。
Rendering Engine,顧名思義,就是用來渲染網(wǎng)頁內(nèi)容的,將網(wǎng)頁的代碼轉(zhuǎn)換為最終你看得見的頁面。因?yàn)槭桥虐?,所以肯定?huì)排版錯(cuò)位等問題。為什么會(huì)排版錯(cuò)位呢?有的是由于網(wǎng)站本身編寫不規(guī)范,有的是由于瀏覽器本身的渲染不標(biāo)準(zhǔn)。
現(xiàn)在有幾個(gè)主流的排版引擎,因?yàn)檫@些排版引擎都有其代表的瀏覽器,所以常常會(huì)把排版引擎的名稱和瀏覽器的名稱混用,比如常的說IE內(nèi)核、Chrome內(nèi)核。其實(shí)這樣子是不太合理的,因?yàn)橐粋€(gè)完整的瀏覽器不會(huì)只有一的排版引擎,還有自己的界面框架和其它的功能支撐,而排版引擎本身也不可能實(shí)現(xiàn)瀏覽器的所有功能。
下面羅列一下幾款主流的排版引擎和瀏覽器。
1、Trident 內(nèi)核(Windows)
Trident 就是大名鼎鼎的 IE瀏覽器 所使用的內(nèi)核,也是很多瀏覽器所使用的內(nèi)核,通常被稱為IE內(nèi)核。
Trident內(nèi)核的常見瀏覽器有:
IE6、IE7、IE8(Trident 4.0)、IE9(Trident 5.0)、IE10(Trident 6.0); 世界之窗、 360安全瀏覽器、傲游;搜狗瀏覽器;百度瀏覽器(早期版本)等等。
其中部分瀏覽器的新版本是“雙核”甚至是“多核”,其中一個(gè)內(nèi)核是Trident,然后再增加一個(gè)其他內(nèi)核。國內(nèi)的廠商一般把其他內(nèi)核叫做“高速瀏覽模式”,而Trident則是“兼容瀏覽模式”,用戶可以來回切換。
2、Gecko(跨平臺(tái))
Netscape6 啟用的內(nèi)核,現(xiàn)在主要由Mozilla基金會(huì)進(jìn)行維護(hù),是開源的瀏覽器內(nèi)核,目前最主流的Gecko內(nèi)核瀏覽器是Mozilla Firefox,所以也常常稱之為火狐內(nèi)核。不過比較可惜的是,雖然是開源的,也開發(fā)了這么多年,基于Gecko的瀏覽器并不多見。
3、KHTML(Linux)
KDE開發(fā)的內(nèi)核,速度快捷,容錯(cuò)度低。這個(gè)內(nèi)核可能不見得很多人知道,但是后面再看下去你就明白了。常見的KHTML內(nèi)核的瀏覽器:Konqueror。
4、WebKit(跨平臺(tái))
由KHTML發(fā)展而來,也是蘋果給開源世界的一大貢獻(xiàn)。是目前最火熱的瀏覽器內(nèi)核,火熱倒不是說市場(chǎng)份額,而是應(yīng)用的面積和勢(shì)頭。因?yàn)槭敲撎ビ贙HTML,所以也是具有高速的特點(diǎn),同樣遵循W3C標(biāo)準(zhǔn)。從目前看來,WebKit 內(nèi)核是最有潛力而且是已經(jīng)有相當(dāng)成績的新興內(nèi)核,性能非常好,而且對(duì)W3C標(biāo)準(zhǔn)的支持很完善,本人非??春盟?/p>
常見的WebKit內(nèi)核的瀏覽器:Apple Safari (Win/Mac/iPhone/iPad)、Symbian手機(jī)瀏覽器、Android 默認(rèn)瀏覽器。
5、Chromium(跨平臺(tái))
其實(shí) Chromium 就是 WebKit,維基百科里面并沒有將Chromium從WebKit分出來。Chromium把WebKit的代碼梳理得可讀性提高很多,所以以前可能需要一天進(jìn)行編譯的代碼,現(xiàn)在只要兩個(gè)小時(shí)就能搞定。這個(gè)也能解釋為什么Gecko和WebKit出來了這么久,第三方編譯、定制的版本并不多,但是由Chromium衍生出來的瀏覽器早就滿坑滿谷了。
常見的Chromium內(nèi)核的瀏覽器:Google Chrome、Chromium、SRWare Iron、Comodo Dragon。
6、Presto(跨平臺(tái))
Opera 所采用的內(nèi)核,準(zhǔn)確地說,是Opera 7.0及以后版本的內(nèi)核,Opera 3.5-6.1版本使用的內(nèi)核叫做Elektra。不用說,Presto對(duì)W3C標(biāo)準(zhǔn)的支持也是很良好的,但對(duì)Presto的渲染速度持有保留態(tài)度。Presto優(yōu)先解析文字,保證可閱讀性,媒體資源的渲染放后。常見的Presto內(nèi)核的瀏覽器:Opera。
javascript引擎
JavaScript引擎就是用來執(zhí)行JS代碼的。譬如說,一個(gè)算圓周率的網(wǎng)頁,排版引擎把頁面的框架給顯示出來了,但最終的結(jié)果需要用到 Javascript 來計(jì)算,所以Javascript引擎的快慢也是對(duì)整個(gè)網(wǎng)頁的速度有著很大影響,特別是目前越來越多類似 WebQQ、Gmail 等大量應(yīng)用了復(fù)雜的 Javascript 運(yùn)算的網(wǎng)站,不同的引擎最終的速度差異會(huì)相當(dāng)大。
為什么要單獨(dú)拿出來說呢?因?yàn)樗€涉及到跑分。經(jīng)??匆姾芏辔恼略趫?bào)道說哪個(gè)瀏覽器更快,其實(shí)大部分說的就是JavaScript的渲染速度,而不是頁面的載入速度。在網(wǎng)速許可的情況下,其實(shí)各個(gè)瀏覽器的頁面載入速度差別不大(Opera遜色一些)。那是不是說對(duì)比JavaScript的渲染速度其實(shí)沒有意義?也不是這么說,因?yàn)楝F(xiàn)在JavaScript在頁面中的比重會(huì)越來越大,越來越多的動(dòng)態(tài)頁面開始大量借助JavaScript,比如現(xiàn)在主流的SNS、郵箱、網(wǎng)頁游戲,所以JavaScript的渲染速度也是一個(gè)很重要的指標(biāo)。JavaScript的渲染速度越快,動(dòng)態(tài)頁面的展示也越快。Opera在JavaScript引擎的跑分上面一直都是很牛逼的,一般來說最新測(cè)試版之間PK,Opera基本都會(huì)奪冠。
1、Chakra 查克拉,IE9啟用的新的JavaScript引擎。
2、SpiderMonkey / TraceMonkey / JaegerMonkey
SpiderMonkey應(yīng)用在Mozilla Firefox 1.0-3.0,TraceMonkey應(yīng)用在Mozilla Firefox 3.5-3.6版本,JaegerMonkey應(yīng)用在Mozilla Firefox 4.0及后續(xù)的版本。
3、V8 應(yīng)用于Chrome、傲游3。
4、Nitro 應(yīng)用于Safari 4及后續(xù)的版本。
5、Linear A/Linear B/Futhark/Carakan
Linear A應(yīng)用于Opera 4.0-6.1版本,Linear B應(yīng)用于Opera 7.0~9.2版本,F(xiàn)uthark應(yīng)用于Opera 9.5-10.2版本,Carakan應(yīng)用于Opera 10.5及后續(xù)的版本。
6、KJS KHTML對(duì)應(yīng)的JavaScript引擎。
幾個(gè)與瀏覽器有關(guān)的測(cè)試項(xiàng)目
1、V8引擎 測(cè)試傳送門,現(xiàn)在很多“雙核”瀏覽器都用它來跑分測(cè)試JavaScript引擎,分?jǐn)?shù)越高越好。
2、Acid3 測(cè)試傳送門,這個(gè)主要是對(duì)網(wǎng)頁標(biāo)準(zhǔn)的兼容性測(cè)試,分?jǐn)?shù)越高表示越符合網(wǎng)頁的開發(fā)標(biāo)準(zhǔn),滿分是100分。
3、HTML5 測(cè)試傳送門,測(cè)試瀏覽器對(duì)HTML5標(biāo)準(zhǔn)的支持,分?jǐn)?shù)越高越好。
幾個(gè)奇葩
1、IETab
這是一款瀏覽器擴(kuò)展,并非內(nèi)核。在沒有第三方編譯版本的時(shí)候,IETab一直是 Mozilla Firefox、Chrome等非Trident內(nèi)核的瀏覽器的安裝量最大的擴(kuò)展之一,方便用戶在不開啟IE的情況下調(diào)用Trident內(nèi)核訪問一些兼容性比較差的網(wǎng)站。
2、Trident/Gecko雙核瀏覽器
雖然IETab能實(shí)現(xiàn)部分需求,但是深度訂制的畢竟還是不一樣,所以Trident/Gecko雙核瀏覽器就誕生了,Sleipnir、Avant 12(Orca)是這類里面比較常見的。Avant 12因?yàn)橛蠴rca的前期積累,所以輕車熟路,后面還打算加入Chromium,變成三核瀏覽器,但是偏偏現(xiàn)在Mozilla Firefox和Chrome都在瘋狂刷版本號(hào),肯定有一部分精力要花在跟進(jìn)版本上。
3、Trident/WebKit雙核瀏覽器
現(xiàn)在國內(nèi)最主流的“雙核”瀏覽器基本都是這個(gè)架構(gòu),360極速瀏覽器、世界之窗瀏覽器極速版、傲游3、搜狗瀏覽器、QQ瀏覽器、楓樹瀏覽器、快快瀏覽器、百度瀏覽器、阿云瀏覽器(后期版本)、太陽花瀏覽器,其中最奇葩的是傲游3。其它雙核瀏覽器都是基于Chromium的,而傲游是基于WebKit的,但是偏偏又用的是V8引擎。
4、Trident/Gecko/WebKit三核瀏覽器
目前能見的應(yīng)該就是日本的Lunascape,Avant增加了WebKit內(nèi)核之后也會(huì)歸類到這里。說實(shí)話,Lunascape真的很難用,真的很奇葩。各個(gè)內(nèi)核相對(duì)獨(dú)立,外殼本身不夠強(qiáng)化,穩(wěn)定性不高,所以還不如用回單核瀏覽器。
幾個(gè)小點(diǎn)
1、Chrome/Chromium
很多人都會(huì)說自己用的雙核瀏覽器是Chrome/IE雙核的,或者說是基于Chrome的。其實(shí)這種說法并不正確,因?yàn)镃hrome本身并不開源,其它廠商是不能去定制Chrome的。能被修改、定制的是Chromium,Chrome的開源開發(fā)版本,代碼和Build都提供下載。Chromium/Chrome兩個(gè)單詞都是鉻,分別是拉丁文和英文,除了名字之外,很有很多不同,你可以自己對(duì)比一下。Chromium一天最多可以更新十幾二十個(gè)版本,實(shí)驗(yàn)性的新特性都會(huì)現(xiàn)在這里放出,但是Chromium本身其實(shí)并不穩(wěn)定。Chrome總共有四個(gè)更新分支:Canary、Dev、Beta、Stable,穩(wěn)定性依次增強(qiáng)。
2、頁面兼容性判斷
在確保IE瀏覽器沒有損壞的基礎(chǔ)上,搭配一款非Trident內(nèi)核的瀏覽器進(jìn)行判斷,如果可以的話,最好所有內(nèi)核都配齊了??刂谱兞烤湍苷业絾栴}所在,是瀏覽器本身的問題,還是頁面編碼有問題。對(duì)于用戶來說就能更好地去選擇自己該用什么瀏覽器訪問什么頁面,對(duì)于開發(fā)者來說應(yīng)該要寫出無差別代碼。
——以上內(nèi)容參考自:http://www.iplaysoft.com/browsers-engine.html
主流瀏覽器對(duì)CSS3的支持
并非所有的瀏覽器都支持CSS3,各主流瀏覽器都定義了自己私有的屬性,以便讓用戶體驗(yàn)CSS3的特性,然而這種各自為政的方式在避免不同瀏覽器在解析相同屬性時(shí)出現(xiàn)沖突的同時(shí),也給設(shè)計(jì)師帶來諸多不便,需要使用更多的CSS代碼,而且非常容易導(dǎo)致同一個(gè)頁面在不同瀏覽器之間表現(xiàn)不一致。
網(wǎng)頁不需要在所有瀏覽器上看起來都嚴(yán)格一致,有時(shí)候在某個(gè)瀏覽器中使用私有屬性實(shí)現(xiàn)特定效果也是可行的。
Webkit:如Safari、Chrome,私有屬性以-webkit-為前綴;
Gecko: 如Firefox,私有屬性以-moz-為前綴;
Konqueror: 私有屬性以-khtml-為前綴;
Opera: 私有屬性以-o-為前綴;
Internet Explorer: 私有屬性以-ms-為前綴(目前只有IE8+支持);
本文標(biāo)題:主流瀏覽器與CSS3
文章轉(zhuǎn)載:http://www.rwnh.cn/article42/peoehc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)、網(wǎng)站改版、Google、網(wǎng)站制作、App開發(fā)、網(wǎng)站設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)