什麼是 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)。
您可以在菜鳥教程的標籤參考手冊中找到完整的 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 decoding="async" src="happy.gif" alt="Happy face">
正確示例:
分行:<br /> 水平線: <hr /> 圖片: <img decoding="async" 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
1. 添加一個 XHTML <!DOCTYPE> 到你的網頁中
2. 添加 xmlns 屬性添加到每個頁面的html元素中。
3. 改變所有的元素為小寫
4. 關閉所有的空元素
5. 修改所有的屬性名稱為小寫
6. 所有屬性值添加引號