XHTML 簡介
HTML- XHTML
XHTML 是以 XML 格式編寫的 HTML。
什么是 XHTML?
XHTML 指的是可擴展超文本標記語言
XHTML 與 HTML 4.01 幾乎是相同的
XHTML 是更嚴格更純凈的 HTML 版本
XHTML 是以 XML 應用的方式定義的 HTML
XHTML 是 2001 年 1 月發布的 W3C 推薦標準
XHTML 是大小寫敏感的,標準的 XHTML 標簽應該使用小寫。
XHTML 得到所有主流瀏覽器的支持
為什么使用 XHTML?
因特網上的很多頁面包含了"糟糕"的 HTML。
如果在瀏覽器中查看,下面的 HTML 代碼運行起來非常正常(即使它并未遵守 HTML 規則):
<html>
<head>
<title>This is bad HTML</title>
<body>
<h1>Bad HTML
<p>This is a paragraph
</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 屬性最小化也是禁止的
注:在HTML中有時候會存在name=value的情況(即屬性名等于屬性值的情況),在不規范的HTML中,可以使用完整的寫法,也可以使用最小化屬性寫法(只寫屬性名,不寫屬性值,這個時候屬性值等于屬性名),以check屬性為例:
<form> <label>性別:</label><br /> 男:<input type="radio" name="sex" value="男" checked /><br /> 女:<input type="radio" name="sex" value="女" checked ="checked"/> </form>
在HTML中,這兩種寫法都是可以的。但是在XHTML中,不能使用屬性最小化寫法。
另外,在很多地方,可能會將屬性最小化表達為縮寫或者簡寫,其想表達的意思可能與原意相同。但使用屬性最小化的說法比較官方也比較通用 !
<!DOCTYPE ....>是強制性的
XHTML 文檔必須進行 XHTML 文檔類型聲明(XHTML DOCTYPE declaration)。
您可以在 W3Cschool 的標簽參考手冊中找到完整的 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>
<title>Title of document</title>
</head>
<body>
......
</body>
</html>
XHTML 元素必須合理嵌套
在 HTML 中,一些元素可以不互相嵌套,像這樣:
<b><i>This text is bold and italic</b></i>
在 XHTML 中,所有的元素都必須互相合理地嵌套,像這樣:
<b><i>This text is bold and italic</i></b>
XHTML 元素必須有關閉標簽
錯誤示例:
<p>This is a paragraph
<p>This is another paragraph
正確示例:
<p>This is a paragraph</p>
<p>This is another paragraph</p>
空元素必須包含關閉標簽
錯誤示例:
A break: <br>
A horizontal rule: <hr>
An image: <img src="happy.gif" alt="Happy face">
正確示例:
A break: <br />
A horizontal rule: <hr />
An image: <img src="happy.gif" alt="Happy face" />
XHTML 元素必須是小寫
錯誤示例:
<BODY>
<P>This is a paragraph</P>
</BODY>
正確示例:
<body>
<p>This is a paragraph</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元素中。
改變所有的元素為小寫
關閉所有的空元素
修改所有的屬性名稱為小寫
所有屬性值添加引號