2012-01-23 87 views
8

假設我想更改舊版網站爲「HTML5」-ish。簡單地改變標題doctype是否安全如下?只需將網頁文檔類型HTML 4.01或XHTML 1.0更改爲HTML5文檔是否安全?

<!doctype html> 

原來的文檔類型可能是:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 

如果更改爲<!doctype html>沒有破壞傳統網頁的呈現方式的可能性,我會假設它是安全。

回答

5

爲什麼是的,是的。

事實上,HTML5是專門爲此設計的,所以任何人都可以在不觸及標記的情況下簡單地更改他們的文檔類型,這將是有效的。

+1

正是我要說的話。 +1 – Undefined

+0

相反,如果將<!doctype html>頁面更改爲xhtml-doctype,是否有可能毀掉頁面?是否可能「
」而不是「
」中斷渲染? –

+0

你有一個很好的代表,所以也許我不明白。標題可以改變,內容可以顯示,但不能保證在實際內容中有嚴格的標記?也許我錯過了一些東西,也許你可以擴展。 –

1

這取決於您對安全的定義。

它可以在不同的瀏覽器上可靠地觸發相同的渲染模式,所以你不會得到任何影響最終用戶的差異。

它還會更改驗證程序用於檢查文檔的規則,因此可能會在文檔需要更新時爲您的質量檢查過程帶來問題。

2

如果您的「鬆散」文檔包含已棄用的標籤,例如「font」或「frameset」,那麼一旦您將其更改爲HTML5,該頁面將無法驗證。它會起作用嗎?是的,很可能。它會有效嗎?取決於實際的內容。很可能你的嚴格文件,如果它們是有效的,仍然有效,但「鬆散」的文件可能不是。

至於顯示屏會發生什麼?那要看。我發現將某個過渡文檔更改爲HTML5的結果會導致某些瀏覽器的顯示更改 - 在某些情況下,我必須將它們更改回來,直到有時間重寫有問題的頁面。

5

幾乎安全。

該文檔類型:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

原因有限怪癖/在瀏覽器中幾乎標準模式,而這個文檔類型:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

和這個文檔類型

<!doctype html>

在瀏覽器中導致標準模式。

區別在於某些內聯元素在行框中垂直對齊。

+0

這應該是被接受的答案。 – Xogle

1

我剛剛發現了這種不安全的困難方法。我需要一箇舊網站中的HTML5元素,現在工作了幾年。我需要將doctype更改爲html,因爲有些瀏覽器不適用於其他新元素。

原來,在javascript中domobject.name不適用於新的doctype。你必須使用domobject.attributes["name"].value。長話短說這個簡單的事情造成了網站核心功能的主要問題。

因此,最好改變doctype之後測試一切,因爲它可以打破它,你會不會覺得各種各樣的事情......