瀏覽器極速模式和相容模式差異

FengNianya發表於2019-02-16

在國內有一個比較特別的現象,很多網站對瀏覽器的相容性比較差,特別是一些網上銀行、公共服務網站等,雖然現在IE瀏覽器已經推出了IE11版本,但是這些網站目前只支援IE8及以下版本。所以目前在國內使用IE6IE7IE8等舊版瀏覽器的使用者佔比還比較多。根據百度瀏覽器研究院提供的最近3個月的瀏覽器份額可以看到,IE6-IE8瀏覽器加起來還有40%左右。
另一外方便,有些比較現代的網站,採用了很多HTML5、CSS3等最新的網路標準,IE8這些老舊的瀏覽器是無法支援的,而其他非IE瀏覽器對這些標準支援程度都比較高。為了應對這樣的情況,所以國內很多網際網路公司推出了“雙核”瀏覽器。

“雙核”瀏覽器,顧名思義,就是瀏覽器內部包含兩個渲染核心。目前大多數“雙核”瀏覽器內部的兩個核心分別是IE核心和WebKit核心。與雙核處理器不同的是,“雙核”瀏覽器的兩個核心並不能同時為一個網頁進行渲染排版工作,而是根據我們的需要,選擇兩者之中更適合當前網頁的核心來進行渲染排版。IE核心主要用於相容“老一輩”的網頁,使其能夠正常顯示;WebKit核心則用於渲染“新一代”的網頁,從而發揮出更快的顯示速度、更好的顯示效果、更優異的指令碼執行效能。

實際上,大多數使用者並不關心(或者並不知道)雙核瀏覽器的作用,也不會手動選擇適合的渲染核心來渲染當前網頁,選擇渲染核心的工作一般都是瀏覽器自身“智慧”完成的。

不過,瀏覽器還沒有那麼只能,並不總是能夠準確地選擇出適合當前網頁的渲染核心。如果我們的網站屬於“嶄新的一代”(比如使用了大量HTML5的新特性),而“雙核”瀏覽器卻錯誤地使用IE核心來進行渲染排版,那麼使用者看到的將會是一堆亂七八糟的東西。

這當然不是使用者想看到的,更不是我們想見到的。此時,我們可以使用標籤來指定適合自己網站的渲染核心名稱,當雙核瀏覽器訪問本網頁時,就會根據我們的指示,選擇我們指定的渲染核心來處理網頁。

若頁面需預設用極速核,增加標籤:

<meta name="renderer" content="webkit">
若頁面需預設用ie相容核心,增加標籤:

<meta name="renderer" content="ie-comp">
若頁面需預設用ie標準核心,增加標籤:

<meta name="renderer" content="ie-stand">
我們只需在網站的head標籤中新增上面的程式碼,即可以相對應的模式來渲染網站。

同時我們也可以同時指定多個核心名稱,之間以符號”|”進行分隔,如下程式碼:

<meta name="renderer" content="webkit|ie-comp|ie-stand">
此時瀏覽器將會按照從左到右的先後順序選擇其具備的渲染核心來處理當前網頁。

提示:目前只有360旗下全系列雙核瀏覽器識別該meta標籤。其他瀏覽器廠商可能會在以後版本的瀏覽器中新增對該meta標籤的支援。

相關文章