有三個(gè)版本的 XHTML 1.0,它們分別對(duì)應(yīng)三個(gè)版本的 HTML 4.01:
• XHTML 1.0 Transitional
• XHTML 1.0 Strict
• XHTML 1.0 Frameset
XHTML 1.0 Transitional 包含 HTML 4.01 Transitional 中的全部標(biāo)記和屬性。引入 XHTML 1.0 Transitional 標(biāo)準(zhǔn)的目的是,使現(xiàn)有 HTML 設(shè)計(jì)人員和開(kāi)發(fā)人員無(wú)需經(jīng)歷太多的痛苦就能遷移到 XHTML。
XHTML 1.0 Strict 與 XHTML 1.0 Transitional 的不同之處在于,它在文檔結(jié)構(gòu)和表示形式之間實(shí)施了一種更為明顯的分離。與 XHTML 1.0 Transitional 不同,XHTML 1.0 Strict 強(qiáng)迫您使用層疊樣式表來(lái)控制頁(yè)的外觀。
XHTML 1.0 Frameset 文檔意在成為使用 標(biāo)記將瀏覽器劃分為多個(gè)框架的文檔(XHTML 1.0 Transitional 和 Strict 頁(yè)不能包含 標(biāo)記)。
W3C 還發(fā)布了 XHTML 1.1 以作為推薦標(biāo)準(zhǔn)(2001 年 5 月 31 日)。XHTML 1.1 非常類似于 XHTML 1.0 Strict。二者的主要區(qū)別在于,可以用附加模塊擴(kuò)展 XHTML 1.1 以便支持新元素。例如,可以生成特定的 XHTML 1.1 頁(yè),該頁(yè)還包含 MathML(數(shù)學(xué)標(biāo)記語(yǔ)言)、SVG(可伸縮向量語(yǔ)言)或創(chuàng)建的自定義模塊中的元素。
最后,W3C 正在制訂 XHTML 2.0 推薦標(biāo)準(zhǔn)。因?yàn)?XHTML 2.0 仍然處于起草階段,并且當(dāng)前沒(méi)有 Web 瀏覽器支持該標(biāo)準(zhǔn),所以我們不在本文討論它。
ASP.NET 2.0 框架和 Visual Studio .NET 2005 面向 XHTML 1.0 Transitional。該標(biāo)準(zhǔn)是 XHTML 標(biāo)準(zhǔn)中限制性最低的,而且它是與現(xiàn)有 HTML 頁(yè)最兼容的標(biāo)準(zhǔn)。但是,還可以生成面向 XHTML 1.0 Strict 標(biāo)準(zhǔn)甚至 XHTML 1.1 標(biāo)準(zhǔn)的 ASP.NET 2.0 頁(yè)(請(qǐng)參閱后面的“配置 XHTML 一致性”一節(jié))。
(請(qǐng)注意,默認(rèn)情況下,ASP.NET 框架的 Beta 2 版本面向 XHTML 1.1。 ASP.NET 2.0 框架的最終版本將面向 XHTML 1.0 Transitional。)