到底是個(gè)什么,有沒(méi)有影響?">
前兩天和朋友談到<!DOCTYPE>,今天將網(wǎng)上學(xué)習(xí)到的資料在這里整理一下
因?yàn)镠TML5的風(fēng)靡人們慢慢的弱化了對(duì)<!DOCTYPE>的理解,但是現(xiàn)在還是有很多的面試官
在問(wèn)這個(gè)問(wèn)題,所以還是有必要對(duì)其了解一下,以便以后有些許談資。
要弄清楚這個(gè)問(wèn)題,我們首先來(lái)解釋一下瀏覽器的“標(biāo)準(zhǔn)模式”和“怪異模式”。
什么是“怪異模式”?簡(jiǎn)單說(shuō)就是瀏覽器為了兼容很早之前針對(duì)舊版本瀏覽器設(shè)計(jì)、
并未嚴(yán)格遵循W3C標(biāo)準(zhǔn)的網(wǎng)頁(yè)而產(chǎn)生的一種頁(yè)面渲染模式,而在這時(shí)渲染引擎也會(huì)切換到需
要的版本。
什么是“標(biāo)準(zhǔn)模式”?當(dāng)用戶(hù)需要顯示一些新的、滿(mǎn)足W3C規(guī)范的頁(yè)面時(shí),渲染引擎切換到一個(gè)與“
怪異模式”相對(duì)的“標(biāo)準(zhǔn)模式”,在此模式下渲染引擎就是當(dāng)前的最新版本。
這樣也就滿(mǎn)足了更多的W3C規(guī)范。
最后,“標(biāo)準(zhǔn)模式”和“怪異模式”合起來(lái)就稱(chēng)為瀏覽器的文檔模式。
當(dāng)在IE6的時(shí)代,為了既能遵循W3C標(biāo)準(zhǔn),又能保證舊的網(wǎng)頁(yè)能繼續(xù)瀏覽,這樣就產(chǎn)生了“
標(biāo)準(zhǔn)模式”和“怪異模式”。這兩種渲染模式都存在一個(gè)瀏覽器上,但是手動(dòng)切換又不切實(shí)際,
微軟就提出了文檔類(lèi)型(DOCTYPE)這個(gè)在當(dāng)時(shí)非?!靶路f”的概念
<!DOCTYPE>就這樣“華麗”的誕生了,先不說(shuō)去談?wù)撍暮脡?,我們只說(shuō)說(shuō)
它的作用:告知瀏覽器的解析器用什么文檔標(biāo)準(zhǔn)去解析這個(gè)文檔。
DOCTYPE 不存在或格式不正確會(huì)導(dǎo)致文檔以“怪異模式”呈現(xiàn)。
HTML5 不基于SGML,因此不需要對(duì)DTD(Document Type Definition)進(jìn)行引用,但是需要
doctype來(lái)規(guī)范瀏覽器的行為(讓瀏覽器按照它們應(yīng)有的方式來(lái)運(yùn)行)。
而HTML4.01基于SGML,所以需要對(duì)DTD(Document Type Definition)進(jìn)行引用,
告知瀏覽器文檔所使用的文檔類(lèi)型。
注:SGML是國(guó)際上定義電子文檔和內(nèi)容描述的標(biāo)準(zhǔn),基本思想是把文檔的內(nèi)容與樣式分開(kāi)。
由SGML聲明(SGML Declaration)、文檔類(lèi)型定義(Document Type Definition,DTD)和文檔實(shí)例(Document Instance)組成。
【 微信掃一掃 】