1. DOCTYPE種類
DOCTYPE(是Document Type文檔類型的簡寫)是一組機器可讀的規則,它指示(X)HTML文檔中允許有什么,不允許有什么,一般放在(X)HTML文檔開頭聲明,幫助瀏覽器正確地顯示網頁。
xhtml 1.0中有3種dtd聲明可以選擇,過渡性的(Transitional)、嚴格的(Strict)、框架的(Frameset)
- 過渡的:一種要求不很嚴格的,允許在html中使用html 4.01的標識(符合xhtml語法標準),過渡的dtd寫法如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- 嚴格的:一種要求嚴格的dtd,不允許使用任何表現層的標識和屬性,嚴格的dtd寫法如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
- 框架的:一種專門針對框架頁面所使用的dtd,當頁面中含有框架元素時,就要采用這種dtd,寫法如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
PS:使用嚴格的dtd來制作頁面最理想,但對于功力不夠的新手,比較適合用過渡的dtd,因為這種dtd還允許使用表現層的標識、元素和屬性。
2. 什么是標準模式與混雜模式?
- 混雜模式(quirks mode):讓IE的行為與(包含非標準特性的)IE5相同。混雜模式是一種比較寬松的向后兼容的模式。混雜模式通常模擬老式瀏覽器的行為,以防止老站點無法工作。
- 標準模式(standards mode):讓IE的行為更接近標準行為
- 準標準模式(almost standards mode):這種模式下的瀏覽器特性有很多都是符合標準的,不標準的地方主要體現在處理圖片間隙的時候(在表格中使用圖片時問題最明顯)。
- 超級標準模式:IE8引入的一種新的文檔模式,超級文檔模式可以讓IE以其所有版本中最符合標準的方式來解釋網頁內容。
3. 如何觸發?
- 觸發混雜模式:如果在文檔開始處沒有發現文檔類型聲明,則所有瀏覽器都會默認開啟混雜模式。但不推薦此種做法,因為不同瀏覽器在這種模式下的行為差異非常大,如果不使用某些hack技術,跨瀏覽器的行為根本就沒有一致性可言。
- 觸發標準模式:
``
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
- 觸發準標準模式:
`<!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 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
本文章版權歸作者和饑人谷所有,轉載須說明來源