為什麼要在 HTML 文件中加入文件型態定義呢?這是因為瀏覽器會依使用 HTML 標準的版本去解讀 HTML 文件,不同版本多少會有些差異,新版本的 HTML 不見得會跟就版本相容。
例如,還在草稿階段的 HTML 5 就把 HTML 4 的許多標籤捨去,另外又增加一些新的標籤,若是在 HTML 文件中加入文件型態定義的話,瀏覽器就會知道該用哪個版本的 HTML 解譯文件。
HTML 4.01 有以下三種文件型態定義
<!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 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">
可分為
Strict | 嚴格 |
Transitional | 過渡期 |
Frameset | 與過渡期相同,允許使用框架 (frame) |
Strict 為嚴格的文件型態定義,係指完全按照 HTML 4.01 的標準,必要的元素及屬性均不可缺少。
Transitional 為過渡期的文件型態定義,表示此 HTML 文件可相容於之前的標準,有些已經被建議不再使用的標籤仍可使用,例如不被建議繼續使用的 <center> 或是 <font> 標籤。
Frameset 為允許使用框架的文件型態定義,表示此 HTML 文件可使用框架,亦即 <frameset> 及 <frame> 標籤。
W3C 有提供標記語言的驗證器,網址在http://validator.w3.org/
其他可驗證的網頁文件包括 XHTML 、 SMIL 、 MathML 等。
可以見到有三種驗證標記語言,分別是 URI (網址), File (檔案)或是 Direct Input (直接輸入)。我們將以下檔案 example01.html 上傳去驗證看看
<html> <head> <title>網頁標題</title> </head> <body> <p>You ever have that feeling where you're not sure if you're awake or still dreaming?</p> <p>A prison for your mind.</p> <p>Free your mind.</p> <p>Believe the unbelievable.</p> <p>There is no spoon.</p> <p>I can only show you the door, you have to walk through it.</p> <p>Choice. The problem is choice.</p> <p>Then tomorrow we may all be dead, but how would that be different from any other day?</p> <p>I have dreamed a dream, but now that dream has gone from me.</p> <p>Choice is an illusion, created between those with power, and those without.</p> <p>Because I choose to.</p> <p>Everything that has a beginning has an end.</p> </body> </html> <!-- 《程式語言教學誌》的範例程式 http://pydoing.blogspot.com/ 檔名:example01.html 功能:示範 HTML 4.01 標記語言的使用 作者:張凱慶 時間:西元 2011 年 5 月 -->
結果如下
結果說是符合 HTML 4.01 Transitional ,嗯,有一個錯誤跟四個警告,主要是因為我們沒有在 example01.html 加入文件型態定義與文件編碼的宣告,當然,我們的例子用來示範,所以文件編寫上保持簡單,正式的網頁就該盡可能符合標準了說。
我們來試著使文件合乎標準唄!首先,第一行加入
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
對,沒錯,就是嚴格的文件型態定義。然後在 <head></head> 之間加入
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta /> 指定文件的編碼為 utf-8 編碼,那就再上傳一次驗證看看吧!
綠色的 successfully ,就表示 example01.html 已經是嚴格的 HTML 4.01 文件咧!
中英文術語對照 | |
---|---|
文件型態定義 | document type definition |
瀏覽器 | browser |
框架 | frame |
您可以繼續參考
HTML 基本概念
- 元素與屬性
- 絕對路徑與相對路徑
- 度量與單位
- 網頁顏色
- 網頁字元索引
- 文件型態定義
- <html> - 文件標籤
- <head> - 文件標頭
- <title> - 標題
- <meta /> - 資訊
- <link /> - 外連樣式表
- <script> - 腳本程式
- <style> - 樣式
- <base> - 基本路徑
- <body> - 文件主體
- <address> - 作者資訊
相關目錄
HTML 4.01 快速導覽 - 目錄
HTML, CSS 教材
首頁
參考資料
沒有留言:
張貼留言