XHTML(可擴(kuò)展超文本標(biāo)記語言)——是一種置標(biāo)語言,表現(xiàn)方式與超文本標(biāo)記語言(HTML)類似,不過語法上更加嚴(yán)格。
XHTML 1.0 [W3C 推薦標(biāo)準(zhǔn)]基本上是對 HTML 4 的改寫,使其成為結(jié)構(gòu)良好的 XML。HTML 是一種 SGML 應(yīng)用,當(dāng) XML 作為對 SGML 在 Web 應(yīng)用上的簡化和規(guī)范化開發(fā)出來的時(shí)候,HTML(本身是 Web 上的通用語言)就成為采用 XML 的首選目標(biāo)。于是出現(xiàn)了 HTML 的一種變體,稱為 XHTML。XHTML 研究的目標(biāo)是一種更容易解析(因?yàn)?XML 的語法更加嚴(yán)格)的 HTML 語言。XHTML 很容易用現(xiàn)成的 XML 工具處理,力求更好地分離內(nèi)容與表示。XHTML 是最古老的 XML 應(yīng)用之一,有許多利益集團(tuán)在不同的部分和版本中起過作用。我將盡力對其中的大部分加以概括。
與三種HTML 4 DTD——Strict、Transitional 和 Frameset 對應(yīng),XHTML 1.0 定義了不同的 DTD 和名稱空間。Modularization of XHTML [W3C 推薦標(biāo)準(zhǔn)]提供了一個(gè)框架,把 XHTML 分解成單獨(dú)的模塊,作為不同的 DTD 定義。比如,用于定義列表的所有元素和屬性組成一個(gè)模塊,而和表示有關(guān)的元素類型則放在另一個(gè)模塊中。這樣,就可以通過增加、減少和修改通用的獨(dú)立模塊開發(fā)和重新定義 XHTML。沿著這條路線,第一步就是 XHTML Basic [W3C 推薦標(biāo)準(zhǔn)],它定義了任何作為 XHTML 的語言都必須具有的最小 XHTML 模塊集。XHTML Basic 本身可以作為 Web 客戶的內(nèi)容語言,如移動電話、PDA、尋呼機(jī)和置頂盒。XHTML 1.1 [W3C 推薦標(biāo)準(zhǔn)]基本上就是使用模塊框架分解的 XHTML 1.0 Strict DTD。
XHTML 2.0 [開發(fā)中]是對 XHTML 的重寫,沒有考慮與 HTML 的向后兼容。這種想法差不多就是為 Web 編寫一種全新的內(nèi)容語言,學(xué)習(xí)過去的經(jīng)驗(yàn)而又不束縛于過去。其中大的變化有:
<br/>
、 <img/>
以及其他認(rèn)為過于面向表示的元素
更重要的是,XHTML 2.0 做了許多擴(kuò)展,增強(qiáng)了作者表達(dá)內(nèi)容結(jié)構(gòu)和含義的能力。打破向后兼容性引起了爭議。一些評論者認(rèn)為保持 (X)HTML 的名稱只修改版本號會造成混亂。其他人則說這些修改非常必要,而 XHTML 實(shí)際上仍然是一種可擴(kuò)展超本文標(biāo)記語言,因此保留原來的名稱非常合適。
XHTML 常常和其他嵌入格式一起使用,如 MathML、RDF、SVG、SMIL 和 VoiceXML(后面都將予以介紹)。這種混合文檔稱為多模的或者非單體的。W3C、ISO 以及其他組織正投入巨大的努力鼓勵對這種文檔的強(qiáng)力支持。
在繼續(xù)學(xué)習(xí)XHTML教程之前,你應(yīng)該對以下知識有一個(gè)基本的理解:
如果希望首先學(xué)習(xí) HTML,推薦閱讀我們的 HTML 教程 。
XHTML 于2000年的1月26日成為 W3C 標(biāo)準(zhǔn)。
W3C 將 XHTML 定義為最新的HTML版本。XHTML 將逐漸取代 HTML。
通過使用我們的 W3C 教程 ,你將與最新的 web 標(biāo)準(zhǔn)保持同步。
XHTML 與 HTML 4.01 兼容。
所有新的瀏覽器都支持 XHTML。
XHTML 是以 XML 重構(gòu)的 HTML 4.01。通過遵循一些簡單的指導(dǎo)方針,XHTML 就可以立即在現(xiàn)有的瀏覽器中投入使用。
我們百分之百地使用XHTML來構(gòu)建了 W3Cschool。
點(diǎn)擊這個(gè)按鈕: 驗(yàn)證此頁的 XHTML 部分。
點(diǎn)擊這個(gè)按鈕: 驗(yàn)證此頁的 CSS 部分。
一個(gè)符合XHTML標(biāo)準(zhǔn)的文件即可稱為有效. 此可以確保XHTML文件代碼的協(xié)調(diào), 亦能令文件的更容易被處理, 而不需確保各種瀏覽器編譯的一致性。而W3C驗(yàn)證服務(wù)則可以驗(yàn)證文件是否有效。而實(shí)際上, 很多網(wǎng)站開發(fā)工具(例如Dreamweaver)都支援以W3C標(biāo)準(zhǔn)驗(yàn)證文件。
XHTML語言必須符合XML的格式,例如
屬性名稱必須為小寫
錯誤的:<table WIDTH="100%"> 正確的:<table width="100%">
屬性值使用雙引號
錯誤的:<table width=100%> 正確的:<table width="100%">
屬性簡寫是不允許的
錯誤的:<input checked> <input readonly> <input disabled> <option selected> <frame noresize> 正確的:<input checked="checked" /> <input readonly="readonly" /> <input disabled="disabled" /> <option selected="selected" /> <frame noresize="noresize" />
用id屬性來替代name屬性
這是錯誤的:<img src="picture.gif" name="picture1" /> 這是正確的:<img src="picture.gif" id="picture1" />
注意:為了版本比較低的瀏覽器,你應(yīng)該同時(shí)使用name和id屬性,并使它們兩個(gè)的值相同的,像這樣:
<img src="picture.gif" id="picture1" name="picture1" />
這是在HTML中簡寫的屬性和其在XHTML中應(yīng)該怎樣書寫的列表:
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"
這些做法的目的,是使一個(gè)XHTML網(wǎng)頁能夠被網(wǎng)頁瀏覽器正確及較快地編譯。
在接下來的教程里,您將學(xué)習(xí)到XHTML的:
更多建議: