Web 標(biāo)準(zhǔn)使您能通過(guò)最少的工作,生成可被最廣大受眾訪問的 Web 站點(diǎn)。Web 標(biāo)準(zhǔn)的承諾是:只需設(shè)計(jì)頁(yè)面一次,即可讓該頁(yè)以完全相同的方式在任何現(xiàn)代的瀏覽器中顯示和工作。例如,在按照標(biāo)準(zhǔn)生成以后,旨在在 Microsoft Internet Explorer 中以某種方式顯示的頁(yè)可在其他瀏覽器(如,Mozilla Firefox、Netscape Navigator、Opera、Camino 和 Safari)中以相同的方式顯示,而無(wú)需完成任何額外的工作。
Web 標(biāo)準(zhǔn)的一個(gè)額外好處是 ― 使 Web 站點(diǎn)更易于為殘疾人士訪問。這是一個(gè)范圍廣泛的受眾群體,包括視力衰退的中年人士,剛剛在滑雪時(shí)跌斷胳膊的人士,以及完全失明的人士等。使用標(biāo)準(zhǔn)可避免無(wú)意中阻止那些具有暫時(shí)性或永久性身體殘疾的人士訪問 Web 頁(yè)。
HTML 在正式的場(chǎng)合已經(jīng)過(guò)時(shí)了。World Wide Web Consortium (W3C) 于 2000 年 6 月 26 日發(fā)布了 XHTML 的第一個(gè)版本作為推薦標(biāo)準(zhǔn)。XHTML 標(biāo)準(zhǔn)的目標(biāo)是取代 HTML。按照 W3C 的說(shuō)法,“XHTML 是 HTML 的繼承者”(http://www.w3.org/MarkUp/)。
XHTML 標(biāo)準(zhǔn)的制定者具有兩大目標(biāo):
在文檔結(jié)構(gòu)和表示形式之間創(chuàng)建更明顯的分離。 將 HTML 重新表示為 XML 的應(yīng)用程序。 為了實(shí)現(xiàn)第一個(gè)目標(biāo),W3C 一直在堅(jiān)定地從 HTML 中刪除純粹描述性的元素和屬性(他們是從 HTML 4.0 開始這一過(guò)程的)。例如,XHTML 1.0 Strict 不包含諸如 標(biāo)記之類的元素或諸如 bgcolor 屬性之類的屬性,因?yàn)檫@些元素和屬性完全用于描述文檔的外觀,它們與文檔的結(jié)構(gòu)沒有任何關(guān)系。
W3C 一直在努力使 Web 站點(diǎn)設(shè)計(jì)人員和開發(fā)人員摒棄特定標(biāo)記應(yīng)當(dāng)具有特定外觀這一觀念。例如,您可能會(huì)認(rèn)為
標(biāo)記之類的頁(yè)元素來(lái)控制 Web 頁(yè)的外觀。相反,您應(yīng)當(dāng)通過(guò)使用層疊樣式表來(lái)指示 Web 頁(yè)的外觀。而且,您所使用的層疊樣式表應(yīng)當(dāng)是外部 層疊樣式表。請(qǐng)使用標(biāo)記和屬性來(lái)標(biāo)記文檔的結(jié)構(gòu),而使用樣式表來(lái)控制文檔的表示形式。
XHTML 的第二個(gè)目標(biāo)是迫使 HTML 開發(fā)人員遵守更為嚴(yán)格的 XML 規(guī)則。按照 W3C 的說(shuō)法,“XHTML 1.0 是 HTML 4.01 的作為 XML 1.0 應(yīng)用程序的修訂”(http://www.w3.org/MarkUp/)。換句話說(shuō),使用 XHTML 生成 Web 頁(yè)時(shí),實(shí)際上是在創(chuàng)建 XML 文檔。
XML 文檔具有比 HTML 文檔更嚴(yán)格的語(yǔ)法。例如,XML 區(qū)分大小寫,所有 XML 屬性都必須放在引號(hào)內(nèi),而且 XML 標(biāo)記不能重疊。強(qiáng)迫 Web 站點(diǎn)開發(fā)人員和設(shè)計(jì)人員遵守有更高要求的語(yǔ)言規(guī)則有很多好處。
好處之一,用 XHTML 標(biāo)記編寫的頁(yè)具有更高的跨瀏覽器、跨設(shè)備和跨操作系統(tǒng)兼容性。如果在瀏覽器中打開傳統(tǒng)的 HTML 頁(yè),瀏覽器將千方百計(jì)地呈現(xiàn)該頁(yè)。瀏覽器將試圖呈現(xiàn)該頁(yè),即使您的 HTML 一團(tuán)糟。例如,Internet Explorer(以及 Firefox 和 Opera)能夠很好地顯示下面的 HTML 頁(yè)。
this is bold and italic and this is boldInternet Explorer 會(huì)恰當(dāng)?shù)仫@示該頁(yè) ― 即使該頁(yè)缺少和開始標(biāo)記, 標(biāo)記不具有匹配的結(jié)束標(biāo)記,并且開始和結(jié)束 標(biāo)記的大小寫不一致。所有主要的瀏覽器都能適應(yīng)幾乎任何 HTML 標(biāo)記“混合物”,并且不顧一切地呈現(xiàn)一些內(nèi)容。
瀏覽器的這種適應(yīng)行為是危險(xiǎn)的,因?yàn)椴煌臑g覽器(或相同瀏覽器的將來(lái)版本,或在不同操作系統(tǒng)上運(yùn)行的相同瀏覽器)可能以不同方式呈現(xiàn)錯(cuò)亂的 HTML。實(shí)際上,對(duì)于最新版本的 Internet Explorer、Mozilla Firefox 和 Opera 而言,它們呈現(xiàn)無(wú)效 HTML 的方式驚人地一致。但是,一旦開始違反游戲規(guī)則,就不會(huì)得到任何保證。
然而,如果用 XHTML 的更嚴(yán)格的規(guī)則編寫 Web 頁(yè),那么 Web 頁(yè)就更有可能以一致的方式與當(dāng)前瀏覽器協(xié)作,并且它們將繼續(xù)與當(dāng)前瀏覽器的未來(lái)新版本協(xié)作。對(duì)于任何公司而言,幾乎都不具備針對(duì)每個(gè)瀏覽器、在每個(gè)操作系統(tǒng)和每個(gè)設(shè)備上測(cè)試其 Web 站點(diǎn)的資源。如果按照 Web 標(biāo)準(zhǔn)編寫頁(yè)面,那么就不必具有這樣的資源。
XHTML 標(biāo)準(zhǔn)的版本
有三個(gè)版本的 XHTML 1.0,它們分別對(duì)應(yīng)三個(gè)版本的 HTML 4.01: