XHTML?它與 HTML的區別?如何轉換

soug發表於2020-04-01

什麼是 XHTML?XHTML 是以 XML 格式編寫的 HTML。

  • XHTML 指的是可擴充套件超文字標記語言
  • XHTML 與 HTML 4.01 幾乎是相同的
  • XHTML 是更嚴格更純淨的 HTML 版本
  • XHTML 是以 XML 應用的方式定義的 HTML
  • XHTML 是 2001 年 1 月釋出的 W3C 推薦標準
  • XHTML 是大小寫敏感的,標準的 XHTML 標籤應該使用小寫。
  • XHTML 得到所有主流瀏覽器的支援

為什麼使用 XHTML?因特網上的很多頁面包含了"糟糕"的 HTML。如果在瀏覽器中檢視,下面的 HTML 程式碼執行起來非常正常(即使它並未遵守 HTML 規則):

1 <html>2  <head>3  <title>This is bad HTML</title>4  <body>5  <h1>Bad HTML6  <p>This is a paragraph7  </body>

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)。<html>, <head>, <title>, 和 <body> 元素也必須存在,並且必須使用 <html> 中的 xmlns 屬性為文件規定 xml 名稱空間。下面的例子展示了帶有最少的必需標籤的 XHTML 文件:

 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 2  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 3  4  <html xmlns="http://www.w3.org/1999/xhtml"> 5  6  <head> 7  <title>Title of document</title> 8  </head> 9 10  <body>11 ...... 
12  </body>13 14  </html>

XHTML 元素必須合理巢狀
在 HTML 中,一些元素可以不互相巢狀,像這樣:

1 <b><i>This text is bold and italic</b></i>

在 XHTML 中,所有的元素都必須互相合理地巢狀,像這樣:

1 <b><i>This text is bold and italic</i></b>

XHTML 元素必須有關閉標籤

1 錯誤示例:2 <p>This is a paragraph3 <p>This is another paragraph
1 正確示例:2 <p>This is a paragraph</p>3 <p>This is another paragraph</p>

空元素必須包含關閉標籤

1 錯誤示例:2 A break: <br>3  A horizontal rule: <hr>4 An image: <img src="happy.gif" alt="Happy face">5 正確示例:6 A break: <br />7  A horizontal rule: <hr />8  An image: <img src="happy.gif" alt="Happy face" />

XHTML 元素必須是小寫

 1 錯誤示例: 2  3 <BODY> 4  <P>This is a paragraph</P> 5  </BODY> 6 正確示例: 7  8 <body> 9  <p>This is a paragraph</p>10  </body>

屬性名稱必須是小寫

1 錯誤示例:2 3 <table WIDTH="100%">4 正確示例:5 6 <table width="100%">

屬性值必須有引號

1 錯誤示例:2 <table width=100%>3 正確示例:4 <table width="100%">

不允許屬性簡寫

 1 錯誤示例: 2  3 <input checked> 4  <input readonly> 5  <input disabled> 6  <option selected> 7 正確示例: 8  9 <input checked="checked">10  <input readonly="readonly">11  <input disabled="disabled">12  <option selected="selected">


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69966782/viewspace-2683899/,如需轉載,請註明出處,否則將追究法律責任。

相關文章