html語(yǔ)言是我們建立網(wǎng)頁(yè)的工具,從它出現(xiàn)發(fā)展到現(xiàn)在,規(guī)范不斷完善,功能越來(lái)越強(qiáng)。但是依然有缺陷和不足,人們?nèi)栽诓粩嗟母倪M(jìn)它,使它更加便于控制和有彈性,以適應(yīng)網(wǎng)絡(luò)上日新月異的應(yīng)用需求。2000年底,國(guó)際w3c(world wide web consortium)組織公布發(fā)行了xhtml 1.0版本,xhtml和html,xml有什么不同,它增加了什么新功能,今天就讓我們來(lái)初步認(rèn)識(shí)一下xhtml。
xhtml 1.0是一種在html 4.0基礎(chǔ)上優(yōu)化和改進(jìn)的的新語(yǔ)言,目的是基于xml應(yīng)用。xhtml是一種增強(qiáng)了的html,它的可擴(kuò)展性和靈活性將適應(yīng)未來(lái)網(wǎng)絡(luò)應(yīng)用更多的需求。下面是w3c的html工作組主席steven pemberton回答的關(guān)于xhtml的常見(jiàn)基礎(chǔ)問(wèn)題。
問(wèn):什么是xhtml?
答:xhtml是一種為適應(yīng)xml而重新改造的html。當(dāng)xml越來(lái)越成為一種趨勢(shì),就出現(xiàn)了這樣一個(gè)問(wèn)題:如果我們有了xml,我們是否依然需要html?為了回答這個(gè)問(wèn)題,1998年5月我們?cè)谂f金山開(kāi)了兩天的工作會(huì)議,會(huì)議的結(jié)論是:需要。我們依然需要使用html。因?yàn)榇罅康娜藗円呀?jīng)習(xí)慣使用html來(lái)作為他們的設(shè)計(jì)語(yǔ)言,而且,已經(jīng)有數(shù)以百萬(wàn)計(jì)的頁(yè)面是采用html編寫(xiě)的。
問(wèn):為什么xhtml 1.0相對(duì)html 4.0獨(dú)立發(fā)展?
答:并不是這樣。xhtml恰恰就是html 4.0的重新組織,(確切的說(shuō)它是html 4.01,是一個(gè)修正版本的html 4.0,只不過(guò)以xhtml 1.0命名發(fā)行。) 它們?cè)趚ml里的解釋會(huì)有一些必要的差別,但另一方面,它們依然非常相似,我們可以把xhtml的工作看作是html 4.0基礎(chǔ)上的延續(xù)。
問(wèn):xhtml 1.0如何實(shí)現(xiàn)xml標(biāo)準(zhǔn)?
答:xhtml就是一種xml應(yīng)用。它采用xml的dtd文件格式定義,并運(yùn)行在支持xml的系統(tǒng)上。這里要感謝xml的namespaces功能,瀏覽器制造商不需要再創(chuàng)造新的私有標(biāo)簽(tags),他們只需要在xhtml代碼里包含xml代碼片段,或者xml代碼里包含xhtml代碼片段。
問(wèn):xhtml 1.0最主要的優(yōu)勢(shì)是什么?
答:xml是web發(fā)展的趨勢(shì),所以人們急切的希望加入xml的潮流中。使用xhtml 1.0,只要你小心遵守一些簡(jiǎn)單規(guī)則,就可以設(shè)計(jì)出既適合x(chóng)ml系統(tǒng),又適合當(dāng)前大部分html瀏覽器的頁(yè)面。這個(gè)意思就是說(shuō),你可以立刻設(shè)計(jì)使用xml,而不需要等到人們都使用支持xml的瀏覽器。這個(gè)指導(dǎo)方針可以使web平滑的過(guò)渡到xml。
另一個(gè)使用xhtml的優(yōu)勢(shì)是:它非常嚴(yán)密。當(dāng)前網(wǎng)絡(luò)上的html的糟糕情況讓人震驚,早期的瀏覽器接受私有的html標(biāo)簽,所以人們?cè)陧?yè)面設(shè)計(jì)完畢后必須使用各種瀏覽器來(lái)檢測(cè)頁(yè)面,看是否兼容,往往會(huì)有許多莫名其妙的差異,人們不得不修改設(shè)計(jì)以便適應(yīng)不同的瀏覽器。
用xml我們可以重新建立制度,瀏覽器制造商聯(lián)合采用"嚴(yán)格的錯(cuò)誤防御標(biāo)準(zhǔn)",如果xml代碼不兼容,瀏覽器拒絕顯示頁(yè)面,這樣設(shè)計(jì)工作在發(fā)布前必須修正每一個(gè)錯(cuò)誤。
問(wèn):用xhtml,網(wǎng)頁(yè)設(shè)計(jì)師會(huì)遇到和html一樣的瀏覽器兼容性問(wèn)題嗎?
答:希望不會(huì)。"嚴(yán)格的錯(cuò)誤防御標(biāo)準(zhǔn)"將幫助瀏覽器對(duì)代碼作出相同的響應(yīng),xml的namespaces功能使你可以增加自己的新標(biāo)簽而不需要特別的瀏覽器支持。現(xiàn)在我們所需要得到保證的就是:所有瀏覽器開(kāi)發(fā)商一致并且完全遵守我們制定的css。寫(xiě)信給你的瀏覽器制造商,告訴你需要的css規(guī)范,你甚至可以檢測(cè)瀏覽器是否聽(tīng)從你的設(shè)計(jì)。
問(wèn):學(xué)習(xí)xhtml是否很困難?
答:一點(diǎn)也不!
問(wèn):誰(shuí)可以采用xhtml 1.0設(shè)計(jì)?
答:因?yàn)閤html非常簡(jiǎn)單易于實(shí)現(xiàn),所以任何會(huì)用html的人都可以容易地使用xhtml。當(dāng)使用xml瀏覽器的人們?cè)絹?lái)越多,更多的工作會(huì)被建議使用xml,那時(shí)侯也許都將使用xhtml。
問(wèn):什么時(shí)候xhtml網(wǎng)站會(huì)普及?
答:好問(wèn)題。我已經(jīng)看到一些使用xhtml建立的網(wǎng)站,甚至在xhtml 1.0發(fā)布以前。我相信它將會(huì)有一個(gè)大發(fā)展,因?yàn)樗菀琢恕?/p>
問(wèn):我們?nèi)绾螌F(xiàn)有的html轉(zhuǎn)換為xhtml?
答:非常簡(jiǎn)單,因?yàn)樗鼈兎浅O嗨。在w3c網(wǎng)站上有一個(gè)開(kāi)放原代碼(open-source)的軟件叫html tidy,可以幫助你直接轉(zhuǎn)換。
問(wèn):xhtml未來(lái)會(huì)怎樣?
答:xhtml1.0僅僅是這個(gè)新html語(yǔ)言的第一步。新版本將沒(méi)有向下兼容老瀏覽器的約束,可以有更多的發(fā)展空間。
首先,我們將進(jìn)行一次徹底的清理,刪除html 4.0中不兼容的元素。
其次,我們將xhtml模塊化,允許人們?cè)趚ml應(yīng)用中使用xhtml模塊(比如表格),減少重復(fù)開(kāi)發(fā)。同時(shí)也允許開(kāi)發(fā)特別用途的設(shè)計(jì),比如電話應(yīng)用,只要屬于xhtml的子集就可以保持兼容,人們可以創(chuàng)造他們自己的html。
最后,在解決需求方面,我們將開(kāi)發(fā)更多的表單(forms)功能,允許在客戶端執(zhí)行更多的檢測(cè),減少客戶機(jī)--服務(wù)器之間的網(wǎng)絡(luò)信息傳輸?傊嗔钊伺d奮的功能將會(huì)被實(shí)現(xiàn)。