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)。
您可以在本教程的標籤參考手冊中找到完整的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元素中。
- 改變所有的元素為小寫
- 關閉所有的空元素
- 修改所有的屬性名稱為小寫
- 所有屬性值添加引號