XHTML

可擴展 超文本標記語言,是一種置標語言,表現方式與 超文本標記語言HTML)相似,不過 語法上更加嚴格。
從繼承關係上講, HTML是一種基於 標準通用置標語言的應用,是一種很是 靈活的置標語言,而XHTML則基於 可擴展標記語言可擴展標記語言標準通用置標語言的一個子集。XHTML 1.0在2000年1月26日成爲W3C的推薦標準。

1造成背景

可擴展 超文本標記語言。HTML是一種基本的WEB 網頁設計語言,XHTML是一個基於 可擴展標記語言標記語言,看起來與HTML有些相象,只有一些小的但重要的區別,XHTML就是一個扮演着相似HTML的角色的 可擴展標記語言(XML),因此,本質上說,XHTML是一個過渡技術,結合了部分XML的強大功能及大多數HTML的簡單特性。
2000年末,國際 W3C組織萬維網聯盟)組織公佈發行了XHTML 1.0版本。XHTML 1.0是一種在HTML 4.0基礎上優化和改進的的新語言,目的是基於 XML應用。XHTML是一種加強了的HTML,XHTML 是更嚴謹更純淨的 HTML 版本。它的可擴展性和靈活性將適應將來網絡應用更多的需求。XML雖然 數據轉換能 力強大,徹底能夠替代HTML,但面對成千上萬已有的基於HTML語言設計的網站,直接採用XML還爲時過早。所以,在HTML4.0的基礎上,用XML 的規則對其進行擴展,獲得了XHTML。因此,創建XHTML的目的就是實現HTML向XML的過渡。國際上在網站設計中推崇的 WEB標準就是基於XHTML的應用(即一般所說的 CSS+DIV)。

概述

XHTML是當前HTML版的繼承者。HTML 語法要求比較鬆散,這樣對 網頁編寫者來講,比較方便,但對於機器來講,語言的 語法越鬆散,處理起來就越困難,對於傳統的計算機來講,還有能力兼容鬆散語法,但對於許多其餘設備, 好比手機,難度就比較大。所以產生了由 DTD定義規則, 語法要求更加嚴格的XHTML。
大部分常見的 瀏覽器均可以正確地解析XHTML,即便老一點的瀏覽器,XHTML做爲HTML的一個子集,許多也能夠解析。也就是說,幾乎全部的 網頁瀏覽器在正確解析HTML的同時,可兼容XHTML。固然,從 HTML徹底轉移到XHTML,還須要一個過程。
跟層疊式樣式表(外語縮寫: CSS)結合後,XHTML能發揮真正的威力;這使實現樣式跟內容的分離的同時,又能有機地組合 網頁代碼,在另外的單獨文件中,還能夠混合各類XML應用, 好比 MathMLSVG
HTML到XHTML過渡的變化比較小,主要是爲了適應 XML。最大的變化在於文檔必須是良構的,全部 標籤必須閉合,也就是說開始 標籤要有相應的結束 標籤。另外,XHTML中全部的 標籤必須小寫。而按照HTML 2.0以來的傳統,不少人都是將 標籤大寫,這點二者的差別顯著。在XHTML中,全部的 參數值,包括 數字,必須用雙引號括起來(而在 SGML和HTML中,引號不是必須的,當內容只是數字、字母及其它容許的特殊字符時,能夠不用引號)。全部元素,包括空元素, 好比img、br等,也都必須閉合,實現的方式是在開始 標籤末尾加入斜扛, 好比<code><nowiki><img … /></nowiki></code> 、<code><nowiki>
</nowiki></code>。省略參數,比 如<code><nowiki><option selected></nowiki></code>,也不容許,必須 用<code><nowiki><option selected="selected"/></nowiki></code>。二者的詳細差異,可經過W3C XHTML說明]來查閱。

定義

XHTML 指擴展 超文本 標籤語言(EXtensible HyperText Markup Language)。
XHTML 的目標是取代 HTML。
XHTML 與 HTML 4.01 幾乎是相同的。
XHTML 是更嚴格更純淨的 HTML 版本。
XHTML 是做爲一種 XML 應用被從新定義的 HTML。

W3C 標準

* XHTML是EXtensible HyperText Markup Language的英文縮寫,便可擴展的 超文本標記語言.
* XHTML語言是一種 標記語言,它不須要 編譯,能夠直接由 瀏覽器執行.
* XHTML是用來代替HTML的, 是2000年 w3c公佈發行的.
* XHTML是一種加強了的HTML,它的可擴展性和靈活性將適應將來網絡應用更多的需求.
* XHTML是基於XML的應用.
* XHTML更簡潔更嚴謹.
* XHTML也能夠說就是HTML一個升級版本.( w3c描述它爲'HTML 4.01')
* 除此以外XHTML和HTML基本相同.
* XHTML是大小寫敏感的,XHTML與x html是不同的.標準的XHTML 標籤應該使用小寫.

2有效文件

一個符合XHTML標準的文件便可稱爲有效. 此能夠確保XHTML文件代碼的協調, 亦能令文件的更容易被處理, 而不需確保各類瀏覽器 編譯的一致性。而W3C驗證服務則能夠驗證文件是否有效。而實際上, 不少網站開發工具(例如Dreamweaver)都支援以W3C標準驗證文件。

語法

XHTML語言必須符合XML的格式, [1] 例如
Attribute names must be in lower case
屬性名稱必須爲小寫
This is wrong:
這是錯誤的:
<table WIDTH="100%">
This is correct:
這是正確的:
<table width="100%">
Attribute values must be quoted
屬性值使用雙引號
This is wrong:
這是錯誤的:
<table width=100%>
This is correct:
這是正確的:
<table width="100%">
Attribute minimization is forbidden
屬性簡寫是不容許的
This is wrong:
這是錯誤的:
<input checked> <input readonly> <input disabled> <option selected> <frame noresize>
This is correct:
正確的是這樣:
<input checked="checked" /> <input readonly="readonly" /> <input disabled="disabled" /> <option selected="selected" /> <frame noresize="noresize" />
The id attribute replaces the name attribute
用id屬性來替代name屬性
This is wrong:
這是錯誤的:
<img src="picture.gif" name="picture1" />
This is correct:
這是正確的:
<img src="picture.gif" id="picture1" />
注意:爲了版本比較低的瀏覽器,你應該同時使用name和id屬性,並使它們兩個的值相同的,像這樣:
<img src="picture.gif" id="picture1" name="picture1" />
這是在HTML中簡寫的屬性和其在XHTML中應該怎樣書寫的列表:
HTML XHTML
compact compact="compact"
checked checked="checked"
declare declare="declare"
readonly readonly="readonly"
disabled disabled="disabled"
selected selected="selected"
defer defer="defer"
ismap ismap="ismap"
nohref nohref="nohref"
noshade noshade="noshade"
nowrap nowrap="nowrap"
multiple multiple="multiple"
noresize noresize="noresize"
這些作法的目的,是使一個XHTML 網頁可以被 網頁瀏覽器正確及較快地 編譯

與HTML對比

1.全部的標記都必需要有一個相應的結束標記
之前在HTML中,你能夠打開許多 標籤,例如和<li>而不必定寫對應的和</li>來關閉它們。但在XHTML中這是不合法的。XHTML要求有嚴謹的結構,全部 標籤必須關閉。若是是單獨不成對的 標籤,在標籤最後加一個"/"來關閉它。例如:
<img height="80" alt="網頁設計師" src="../images/logo_ w3cn_200x80.gif" width="200" />
2.全部 標籤的元素和屬性的名字都必須使用小寫
與HTML不同,XHTML對大小寫是敏感的,<title>和<TITLE>是不一樣的 標籤。XHTML要求全部的 標籤和屬性的名字都必須使用小寫。例如:<BODY>必須寫成<body> 。大小寫夾雜也是不被承認的,一般dreamweaver自動生成的屬性名字"onMouseOver"也必須修改爲"onmouseover"。
3.全部的XML標記都必須合理 嵌套
一樣由於XHTML要求有嚴謹的結構,所以全部的嵌套都必須按順序,之前咱們這樣寫的代碼:
<p><b></p></b>
必須修改成:<p><b></b></p>
就是說,一層一層的嵌套必須是嚴格對稱。
4.全部的屬性必須用引號""括起來
在HTML中,你能夠不須要給屬性值加引號,可是在XHTML中,它們必須被加引號。例如:
<height=80>
必須修改成:
<height="80">
特殊狀況,你須要在屬性值裏使用雙引號,你能夠用",單引號可使用&apos;,例如:
<alt="say&apos;hello&apos;">
5.把全部<和&特殊符號用編碼表示
任何小於號(<),不是 標籤的一部分,都必須被編碼爲& l t ;
任何大於號(>),不是 標籤的一部分,都必須被編碼爲& g t ;
任何與號(&),不是實體的一部分的,都必須被編碼爲& a m p;
注:以上字符之間無空格。
6.給全部 屬性賦一個值
XHTML規定全部屬性都必須有一個值,沒有值的就重複自己。例如:
<input type="checkbox" name="shirt" value="medium" checked>
必須修改成:
<input type="checkbox" name="shirt" value="medium" checked="checked">
7.不要在註釋內容中使「--」
「--」只能發生在XHTML註釋的開頭和結束,也就是說,在內容中它們再也不有效。例以下面的代碼是無效的:
<!--這裏是註釋-----------這裏是註釋-->
用等號或者空格替換內部的虛線。
<!--這裏是註釋============這裏是註釋-->
以上這些規範有的看上去比較奇怪,但這一切都是爲了使咱們的代碼有一個統1、惟一的標準,便於之後的數據再利用。
8.圖片必須有說明文字
每一個圖片 標籤都必須有ALT說明文字。
<img src="ball.jpg" alt="large red ball" title="large red ball"/> //爲了兼容 火狐和IE瀏覽器,對於圖片 標籤,儘可能採用 alt和title雙標籤,單純的alt標籤在火狐下沒有圖片說明!

3現行規範

1. XHTML 1.0 Transitional - 過渡型,標識 語法要求較寬鬆
< !DOCTYPE htmlPUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.<CITE class=highlight highlight="true"> </CITE>/TR/xhtml1/DTD/xhtml1-transitional.dtd">
要求很是寬鬆的DTD,它容許你繼續使用HTML4.01的標識(可是要符合x html的寫法)。
2. XHTML 1.0 Strict - 嚴格型,標識要求達到以上XHTML相比於HTML的全部改動
<!DOCTYPE htmlPUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www./TR/xhtml1/DTD/xhtml1-strict.dtd">
要求嚴格的 DTD,你不能使用任何表現層的標識和屬性,例如
3. XHTML 1.0 Frameset - 框架集定義
<!DOCTYPE htmlPUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.<CITE class=highlight highlight="true"></CITE>/TR/xhtml1/DTD/xhtml1-frameset.dtd">
專門針對 框架頁面設計使用的DTD,若是你的頁面中包含有框架,須要採用這種DTD
4. XHTML 1.1 - 模塊化的XHTML
5. XHTML 2.0 - 徹底模塊化可定製化的XHTML,正在開發中,參考http://<CITE class="highlight" highlight="true"></CITE>/

4W3C釋義

W3C是英文 World Wide Web Consortium 的縮寫,中文意思是W3C理事會或 萬維網聯盟。W3C於1994年10月在 麻省理工學院計算機科學實驗室成立。建立者是萬維網的發明者 Tim Berners-Lee。   W3C組織是對網絡標準制定的一個非贏利組織,像HTML、XHTML、CSS、XML的標準就是由W3C來定製。W3C會員(大約500名會員)包括生產技術產品及服務的廠商、內容供應商、團體用戶、研究實驗室、標準制定機構和政府部門,一塊兒 協同工做,致力在萬維網發展方向上達成共識。

5總結

XHTML是「3種HTML 4文件根據XML 1.0標準重組」而成的。 而 W3C亦繼續維持建議使用 HTML4.01和積極地研究 HTML5及XHTML的計劃。 於 2002年 8月發表的XHTML 1.0 的建議中, W3C指出XHTML家族將會是 Internet的新階段。而轉換使用XHTML能夠令開發人員接觸 XML和其好處,並能夠確保以XHTML開發的 網頁於將來的相容性。
HTML
XHTML HTML 5 CSS TCP/IP
XML
XML XSL XSLT XSL-FO XPath XPointer XLink DTD XML Schema DOM XForms SOAP WSDL RDF RSS WAP Web Services
Web腳本
JavaScript HTML DOM DHTML VBScript AJAX jQuery JSON E4X WMLScript
Serv腳本
SQL ASP ADO PHP
.NET
多媒體
SMIL SVG

網頁技術與標準

文檔呈現語言
HTML XHTML XML XForms
DHTML      
 
樣式格式描述語言
層疊樣式表 XSL    
 
動態網頁技術
CGI FastCGI ASP ASP.NET
ColdFusion JSP PHP  
 
客戶端交互技術
ActiveX Java Applet JavaFX AJAX
Silverlight ActionScript Flex AIR
 
客戶端腳本語言
JavaScript JScript VBScript ECMAScript
 
標識定位語言
URL URI XPath URL重寫
 
文檔綱要語言
DTD XML Schema    
 
參考資料
相關文章
相關標籤/搜索