2015
09-06

XHTML 簡(jiǎn)介

清華大佬耗費(fèi)三個(gè)月吐血整理的幾百G的資源,免費(fèi)分享!....>>>

HTML - XHTML


XHTML 是以 XML 格式編寫(xiě)的 HTML。


什么是 XHTML?

  • XHTML 指的是可擴(kuò)展超文本標(biāo)記語(yǔ)言
  • XHTML 與 HTML 4.01 幾乎是相同的
  • XHTML 是更嚴(yán)格更純凈的 HTML 版本
  • XHTML 是以 XML 應(yīng)用的方式定義的 HTML
  • XHTML 是 2001 年 1 月發(fā)布的 W3C 推薦標(biāo)準(zhǔn)
  • XHTML 得到所有主流瀏覽器的支持

為什么使用 XHTML?

因特網(wǎng)上的很多頁(yè)面包含了"糟糕"的 HTML。

如果在瀏覽器中查看,下面的 HTML 代碼運(yùn)行起來(lái)非常正常(即使它并未遵守 HTML 規(guī)則):

<html>
<head>
<title>This is bad HTML</title>
<body>
<h1>Bad HTML
<p>This is a paragraph
</body>

XML 是一種必須正確標(biāo)記且格式良好的標(biāo)記語(yǔ)言。

如果希望學(xué)習(xí) XML,請(qǐng)閱讀我們的 XML 教程。

今日的科技界存在一些不同的瀏覽器技術(shù)。其中一些在計(jì)算機(jī)上運(yùn)行,而另一些可能在移動(dòng)電話或其他小型設(shè)備上運(yùn)行。小型設(shè)備往往缺乏解釋"糟糕"的標(biāo)記語(yǔ)言的資源和能力。

所以 - 通過(guò)結(jié)合 XML 和 HTML 的長(zhǎng)處,開(kāi)發(fā)出了 XHTML。XHTML 是作為 XML 被重新設(shè)計(jì)的 HTML。


與 HTML 相比最重要的區(qū)別:

文檔結(jié)構(gòu)

  • XHTML DOCTYPE 是強(qiáng)制性的
  • <html> 中的 XML namespace 屬性是強(qiáng)制性的
  • <html>、<head>、<title> 以及 <body> 也是強(qiáng)制性的

元素語(yǔ)法

  • XHTML 元素必須正確嵌套
  • XHTML 元素必須始終關(guān)閉
  • XHTML 元素必須小寫(xiě)
  • XHTML 文檔必須有一個(gè)根元素

屬性語(yǔ)法

  • XHTML 屬性必須使用小寫(xiě)
  • XHTML 屬性值必須用引號(hào)包圍
  • XHTML 屬性最小化也是禁止的

<!DOCTYPE ....>是強(qiáng)制性的

XHTML 文檔必須進(jìn)行 XHTML 文檔類(lèi)型聲明(XHTML DOCTYPE declaration)。

您可以在 W3School 的標(biāo)簽參考手冊(cè)中找到完整的 XHTML 文檔類(lèi)型。

<html>, <head>, <title>, 和 <body> 元素也必須存在,并且必須使用 <html> 中的 xmlns 屬性為文檔規(guī)定 xml 命名空間。

下面的例子展示了帶有最少的必需標(biāo)簽的 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 元素必須有關(guān)閉標(biāo)簽

錯(cuò)誤示例:

<p>This is a paragraph
<p>This is another paragraph

正確示例:

<p>This is a paragraph</p>
<p>This is another paragraph</p>


空元素必須包含關(guān)閉標(biāo)簽

錯(cuò)誤示例:

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 元素必須是小寫(xiě)

錯(cuò)誤示例:

<BODY>
<P>This is a paragraph</P>
</BODY>

正確示例:

<body>
<p>This is a paragraph</p>
</body>


屬性名稱(chēng)必須是小寫(xiě)

錯(cuò)誤示例:

<table WIDTH="100%">

正確示例:

<table width="100%">


屬性值必須有引號(hào)

錯(cuò)誤示例:

<table width=100%>

正確示例:

<table width="100%">


不允許屬性簡(jiǎn)寫(xiě)

錯(cuò)誤示例:

<input checked>
<input readonly>
<input disabled>
<option selected>

正確示例:

<input checked="checked">
<input readonly="readonly">
<input disabled="disabled">
<option selected="selected">


如何將 HTML 轉(zhuǎn)換為 XHTML

  1. 添加一個(gè) XHTML <!DOCTYPE> 到你的網(wǎng)頁(yè)中
  2. 添加 xmlns 屬性添加到每個(gè)頁(yè)面的html元素中。
  3. 改變所有的元素為小寫(xiě)
  4. 關(guān)閉所有的空元素
  5. 修改所有的屬性名稱(chēng)為小寫(xiě)
  6. 所有屬性值添加引號(hào)

使用 W3C 驗(yàn)證器來(lái)測(cè)試你的 XHTML

請(qǐng)?jiān)谙旅娴妮斎肟蛑休斎肽木W(wǎng)址:

掃碼二維碼 獲取免費(fèi)視頻學(xué)習(xí)資料

編程學(xué)習(xí)