2011-08-25 89 views
4

我正在讀一本關於HTML,有一個段落,我無法理解過渡:DOCTYPE HTML中

如果你有在2.0和3.2天 使用大量遺留的東西從後面的HTML。然後使用HTML 4.01 Transitional DOCTYPE,它允許你 驗證你的頁面,但仍然允許一些遺留的HTML。所以,那 你不必修改所有的HTML來驗證它。

我的問題是什麼是前款的意義和

什麼是HTML的過渡和嚴格的DOCTYPE有什麼區別?

回答

1

嚴格更接近設計人員對HTML 4的理想。Transitional包含其他已過時的內容,這些內容大部分已被CSS取代。

0

在嚴格的文檔類型中,您必須引用並且僅限於您定義的HTML標準。較舊的規則已被棄用,因此如果它們被破壞,驗證將失敗。

如果您有舊的HTML格式的文檔,並且不想將其更改爲符合新規則,則可以使用過渡HTML來擴展新規則和舊規則。

+0

有沒有出現嚴格非過時的東西。在Transitional中有些東西對於HTML 4來說是新的,但不是嚴格的。 – Quentin

1

另一件事要記住,除了文檔類型的內在差異,是在HTML 4 過渡 DOCTYPE是唯一的現代(由是,我的意思是HTML版本4及以上)的doctype觸發怪癖模式(這太糟糕了!);所有其他人都觸發標準模式渲染

查看source。另外請注意,這有點複雜。過渡型doctype在沒有系統標識符時會觸發怪異模式,而在它出現時會觸發標準模式。您確實應該使用嚴格的HTML 4.01或更好的HTML 5。

+0

如果您使用HTML規範中編寫的Transitional Doctype,那麼您將不**觸發怪癖模式。如果您忽略系統標識符(即URI),您只會得到Quirks模式。 – Quentin

+0

我想知道,省略系統標識符是否違法行爲? –

+1

可以忽略它,但如果它是「這是您將使用的Doctype」或「這是Doctype,您可以根據SGML規範修改它」的情況,則說明不清楚。 – Quentin

0

doctype聲明引用文檔類型定義(DTD)。 DTD指定了標記語言的規則,以便瀏覽器正確地呈現內容。

請通過這些網站來教育自己 - http://www.w3schools.com/tags/tag_doctype.asphttp://htmlhelp.com/tools/validator/doctype.htmlhttp://www.w3.org/QA/2002/04/valid-dtd-list.html

+0

不要使用W3Schools文章,它有很多錯誤。它只有**兩個**段落,我無法在...中看到錯誤,其中一個僅僅是一條指令,可以查看不同的頁面。 – Quentin

+0

DTD只指定了一些規則,沒有瀏覽器使用DTD來確定如何渲染內容(有些會使用Doctype切換渲染模式,但這不是Doctype應該使用的內容,也不是基於DTD--它只是將Doctype視爲魔術字符串)。 – Quentin

+1

@Ashis:http://www.w3fools。com/ – think123