HTML - XHTML
XHTML 是以 XML 格式編寫的 HTML。
什麼是 XHTML?
- XHTML 指的是可擴展超文本標記語言
- XHTML 與 HTML 4.01 幾乎是相同的
- XHTML 是更嚴格更純淨的 HTML 版本
- XHTML 是以 XML 應用的方式定義的 HTML
- XHTML 是 2001 年 1 月發佈的 W3C 推薦標準
- XHTML 得到所有主流流覽器的支持
為什麼使用 XHTML?
因特網上的很多頁面包含了"糟糕"的 HTML。
如果在流覽器中查看,下麵的 HTML 代碼運行起來非常正常(即使它並未遵守 HTML 規則):
<html>
<head>
<meta charset="utf-8">
<title>這是一個不規範的 HTML</title>
<body>
<h1>不規範的 HTML
<p>這是一個段落
</body>
XML 是一種必須正確標記且格式良好的標記語言。
如果希望學習 XML,請閱讀我們的 XML 教學。
今日的科技界存在一些不同的流覽器技術。其中一些在電腦上運行,而另一些可能在移動電話或其他小型設備上運行。小型設備往往缺乏解釋"糟糕"的標記語言的資源和能力。
所以 - 通過結合 XML 和 HTML 的長處,開發出了 XHTML。XHTML 是作為 XML 被重新設計的 HTML。
與 HTML 相比最重要的區別:
文檔結構
- XHTML DOCTYPE 是強制性的
- <html> 中的 XML namespace 屬性是強制性的
- <html>、<head>、<title> 以及 <body> 也是強制性的
元素語法
- XHTML 元素必須正確嵌套
- XHTML 元素必須始終關閉
- XHTML 元素必須小寫
- XHTML 文檔必須有一個根元素
屬性語法
- XHTML 屬性必須使用小寫
- XHTML 屬性值必須用引號包圍
- XHTML 屬性最小化也是禁止的
<!DOCTYPE ....>是強制性的
XHTML 文檔必須進行 XHTML 文檔類型聲明(XHTML DOCTYPE declaration)。
您可以在IT研修的標籤參考手冊中找到完整的 XHTML 文檔類型。
<html>, <head>, <title>, 和 <body> 元素也必須存在,並且必須使用 <html> 中的 xmlns 屬性為文檔規定 xml 命名空間。
下麵的例子展示了帶有最少的必需標籤的 XHTML 文檔:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8">
<title>文檔標題</title>
</head>
<body>
文檔內容
</body>
</html>
XHTML 元素必須合理嵌套
在 HTML 中,一些元素可以不互相嵌套,像這樣:
<b><i>粗體和斜體文本</b></i>
在 XHTML 中,所有的元素都必須互相合理地嵌套,像這樣:
<b><i>粗體和斜體文本</i></b>
XHTML 元素必須有關閉標籤
錯誤示例:
<p>這是一個段落
<p>這是另外一個段落
正確示例:
<p>這是一個段落</p>
<p>這是另外一個段落</p>
空元素必須包含關閉標籤
錯誤示例:
分行:<br>
水平線: <hr>
圖片: <img src="happy.gif" alt="Happy face">
正確示例:
分行:<br />
水平線: <hr />
圖片: <img src="happy.gif" alt="Happy face" />
XHTML 元素必須是小寫
錯誤示例:
<BODY>
<P>這是一個段落</P>
</BODY>
正確示例:
<body>
<p>這是一個段落</p>
</body>
屬性名稱必須是小寫
錯誤示例:
<table WIDTH="100%">
正確示例:
<table width="100%">
屬性值必須有引號
錯誤示例:
<table width=100%>
正確示例:
<table width="100%">
不允許屬性簡寫
錯誤示例:
<input checked>
<input readonly>
<input disabled>
<option selected>
正確示例:
<input checked="checked">
<input readonly="readonly">
<input disabled="disabled">
<option selected="selected">
如何將 HTML 轉換為 XHTML
- 添加一個 XHTML <!DOCTYPE> 到你的網頁中
- 添加 xmlns 屬性添加到每個頁面的html元素中。
- 改變所有的元素為小寫
- 關閉所有的空元素
- 修改所有的屬性名稱為小寫
- 所有屬性值添加引號