這周學習主要難點針對在瀏覽器的兼容問題,常常聽到的一句話就是::爲何會有IE6,,,對於瀏覽器兼容性初學的我,對這周學習先有個初初的總結。css
瀏覽器內核的優缺點html
Trident:這種瀏覽器內核是ie用的內核,由於在早期IE佔有大量的市場份額,因此這種內核比較流行,之前有不少網頁也是根據這個內核的標準來編寫的,可是實際上這個內核對真正的網頁標準支持不是很好,甚至在2005年,與網頁標準制定組織(W3C理事會)所制定的標準發生了脫節,同時 Trident 內核自己的BUG比較多,對一些符合W3C標準的網頁代碼支持不是很好,這在早期的IE版本中比較明顯,好比IE5.5之前(包括IE5.5),其實ie6對W3C標準的支持也不是很好,而咱們如今不少人都在使用IE6,事實上它也屬於一個比較早的版本。jquery
可是因爲IE的高市場佔有率,微軟也很長時間沒有更新Trident內核,這致使了二個結果
1,Trident內核和W3C標準脫節。
2,Trident內核的大量Bug等安全問題沒有獲得解決,加上一些專家學者公開本身認爲IE瀏覽器不安全的觀點,使不少用戶開始轉向其餘瀏覽器,FF,Opera就是這時期興起的。
Gecko:這是Firefox 和 Flock 所採用內核,這個內核的優勢就是功能強大、豐富,能夠支持不少複雜網頁效果和瀏覽器擴展接口,可是代價是也顯而易見就是要消耗不少的資源,好比內存。
Presto:Opera 採用的是 Presto內核,Presto內核被稱爲公認的瀏覽網頁速度最快的內核,這得益於它在開發時的天生優點,在處理JS腳本等腳本語言時,會比其餘的內核快3倍左右,缺點就是爲了達到很快的速度而丟掉了一部分網頁兼容性。程序員
Webkit:Webkit 是 Safari 採用的內核,不過 Safari 是蘋果系統下的瀏覽器(雖然也有windows版,可是比較少),因此只簡單介紹一下這個內核的優勢和缺點,優勢就是網頁瀏覽速度較快,雖然不及 Presto 可是也勝於 Gecko 和 Trident,缺點是對於網頁代碼的容錯性不高,也就是說對網頁代碼的兼容性較低,會使一些編寫不標準的網頁沒法正確顯示。windows
主流瀏覽器所使用的內核分類瀏覽器
加入如下任意一種:HTML4提供了三種DOCTYPE可選擇:
<!DOCTYPE HTML PUBLIC 「-//W3C//DTD HTML 4.01 Transitional//EN」 「http://www.w3.org/TR/html4/loose.dtd」>安全
<!DOCTYPE HTML PUBLIC 「-//W3C//DTD HTML 4.01//EN」 「http://www.w3.org/TR/html4/strict.dtd」>網絡
<!DOCTYPE HTML PUBLIC 「-//W3C//DTD HTML 4.01 Frameset//EN」 「http://www.w3.org/TR/html4/frameset.dtd」>框架
XHTML1.0提供了三種DOCTYPE可選擇:ide
(1)過渡型(Transitional )
<!DOCTYPE html PUBLIC 「-//W3C//DTD XHTML 1.0 Transitional//EN」 「http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd」>
(2)嚴格型(Strict )
<!DOCTYPE html PUBLIC 「-//W3C//DTD XHTML 1.0 Strict//EN」 「http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd」>
四、如何斷定如今是標準模式仍是怪異模式:
方法一:執行如下代碼
alert(window.top.document.compatMode) ;
//BackCompat 表示怪異模式
//CSS1Compat 表示標準模式