XHTMLDHTMLSHTML到底是什么,有何區(qū)別?_XHTML教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!
        我們經(jīng)常會在一個(gè)技術(shù)性網(wǎng)站或BBS見到這三個(gè)東東:XHTML DHTML SHTML,它們到底是怎么回事呢?我們看下面的說明與講解。

      XHTML:
        HTML是一種基本的WEB網(wǎng)頁設(shè)計(jì)語言,XHTML是一個(gè)基于XML的置標(biāo)語言,看起來與HTML有些相象,只有一些小的但重要的區(qū)別,XHTML就是一個(gè)扮演著類似HTML的角色的XML,所以,本質(zhì)上說,XHTML是一個(gè)過渡技術(shù),結(jié)合了XML(有幾分)的強(qiáng)大功能及HTML(大多數(shù))的簡單特性。

        2000年底,國際W3C(World Wide Web Consortium)組織公布發(fā)行了XHTML 1.0版本。XHTML 1.0是一種在HTML 4.0基礎(chǔ)上優(yōu)化和改進(jìn)的的新語言,目的是基于XML應(yīng)用。XHTML是一種增強(qiáng)了的HTML,它的可擴(kuò)展性和靈活性將適應(yīng)未來網(wǎng)絡(luò)應(yīng)用更多的需求。下面是W3C的HTML工作組主席Steven Pemberton回答的關(guān)于XHTML的常見基礎(chǔ)問題。

        (1)XHTML解決HTML語言所存在的嚴(yán)重制約其發(fā)展的問題。HTML發(fā)展到今天存在三個(gè)主要缺點(diǎn):不能適應(yīng)現(xiàn)在越多的網(wǎng)絡(luò)設(shè)備和應(yīng)用的需要,比如手機(jī)、PDA、信息家電都不能直接顯示HTML;由于HTML代碼不規(guī)范、臃腫,瀏覽器需要足夠智能和龐大才能夠正確顯示HTML;數(shù)據(jù)與表現(xiàn)混雜,這樣你的頁面要改變顯示,就必須重新制作HTML。因此HTML需要發(fā)展才能解決這個(gè)問題,于是W3C又制定了XHTML,XHTML是HTML向XML過度的一個(gè)橋梁。

        (2)XML是web發(fā)展的趨勢,所以人們急切的希望加入XML的潮流中。XHTML是當(dāng)前替代HTML4標(biāo)記語言的標(biāo)準(zhǔn),使用XHTML 1.0,只要你小心遵守一些簡單規(guī)則,就可以設(shè)計(jì)出既適合XML系統(tǒng),又適合當(dāng)前大部分HTML瀏覽器的頁面。這個(gè)意思就是說,你可以馬上設(shè)計(jì)使用XML,而不需要等到人們都使用支持XML的瀏覽器。這個(gè)指導(dǎo)方針可以使web平滑的過渡到XML。

        (3)使用XHTML的另一個(gè)優(yōu)勢是:它非常嚴(yán)密。當(dāng)前網(wǎng)絡(luò)上的HTML的糟糕情況讓人震動(dòng),早期的瀏覽器接受私有的HTML標(biāo)簽,所以人們在頁面設(shè)計(jì)完畢后必須使用各種瀏覽器來檢測頁面,看是否兼容,往往會有許多莫名其妙的差異,人們不得不修改設(shè)計(jì)以便適應(yīng)不同的瀏覽器。

        (4)XHTML是能與其它基于XML的標(biāo)記語言、應(yīng)用程序及協(xié)議進(jìn)行良好的交互工作。

        (5)XHTML是Web標(biāo)準(zhǔn)家族的一部分,能很好在無線設(shè)備等其它用戶代理上。

        (6)在網(wǎng)站設(shè)計(jì)方面,XHTML可助你去掉表現(xiàn)層代碼的惡習(xí),幫助你養(yǎng)成標(biāo)記校驗(yàn)來測試頁面工作的習(xí)慣。

      DHTML:

        DHTML只是一種制作網(wǎng)頁的概念,實(shí)際上沒有一個(gè)組織或機(jī)構(gòu)推出過所謂的DHTML標(biāo)準(zhǔn)或技術(shù)規(guī)范之類的。DHTML不是一種技術(shù)、標(biāo)準(zhǔn)或規(guī)范,DHTML只是一種將目前已有的網(wǎng)頁技術(shù)、語言標(biāo)準(zhǔn)整和運(yùn)用,制作出能在下載后仍然能實(shí)時(shí)變換頁面元素效果的網(wǎng)頁的設(shè)計(jì)概念。

        DHTML大致包含以下網(wǎng)頁技術(shù)、標(biāo)準(zhǔn)或規(guī)范:

      示例代碼 [www.wf0088.com]
        HTML 4.0  沒什么好說的,網(wǎng)頁的基礎(chǔ)語言標(biāo)準(zhǔn)。
        CSSL 注重!不是CSS,是CSSL,它是Clent-Side Scripting Language的縮寫,譯作“客戶端腳本語言”,主要有JavaScript(JS),VBScript(VBS),JScript。Netscape主要支持JS,IE主要支持JS,VBS和JScript。
        DOM Document Object Model的縮寫,譯作“文檔對象模型”,是W3C日前極力推廣的web技術(shù)標(biāo)準(zhǔn)之一,它將網(wǎng)頁中的內(nèi)容抽象成對象,每個(gè)對象擁有各自的屬性(Properties)、方法(Method)和事件(Events),這些都可以通過上面講到的CSSL來進(jìn)行控制。IE和NS的對象模型都是以W3C的公布的DOM為基準(zhǔn),加上自己的Extended Object(擴(kuò)展對象)來生成的。
        CSS 這才是Cascading Style Sheets(層疊樣式表單)的縮寫,也是本站MB5U.com的主題,它是HTML的輔助設(shè)計(jì)規(guī)范,用來彌補(bǔ)HTML在排版上的所受的限制導(dǎo)致的不足,它是DOM的一部分。理論上說通過CSSL動(dòng)態(tài)地改變CSS屬性可以做出任何你想要的頁面視覺效果。

        所以,簡單地說,要實(shí)現(xiàn)DHTML,就是以HTML為基礎(chǔ),運(yùn)用DOM將頁面元素對象化,利用CSSL控制這些對象的CSS屬性以達(dá)到網(wǎng)頁的動(dòng)態(tài)視覺效果。

      SHTML:

        問起SHTML和HTML的區(qū)別,假如用一句話來解釋就是:SHTML不是HTML而是一種服務(wù)器 API,shtml是服務(wù)器動(dòng)態(tài)產(chǎn)成的html。

        雖然兩者都是超文本格式,但shtml是一種用于SSI技術(shù)的文件。 也就是Server Side Include--SSI 服務(wù)器端包含指令。 假如Web Server有SSI功能的話(大多數(shù)(尤其是基于Unix平臺)的WEB服務(wù)器如Netscape Enterprise Server等均支持SSI命令)。 會對shtml文件非凡招待。 先掃一次shtml文件看沒有非凡的SSI指令現(xiàn)在。 有就按Web Server設(shè)定規(guī)則解釋SSI指令。 解釋完后跟一般html一起掉去客戶端。

        SHTML使用SSI(Server Side Include)的html文件擴(kuò)展名,SSI(Server Side Include),通常稱為"服務(wù)器端嵌入"或者叫"服務(wù)器端包含",是一種類似于ASP的基于服務(wù)器的網(wǎng)頁制作技術(shù)。

        SSI工作原理:

      示例代碼 [www.wf0088.com]
        將內(nèi)容發(fā)送到瀏覽器之前,可以使用“服務(wù)器端包含 (SSI)”指令將文本、圖形或應(yīng)用程序信息包含到網(wǎng)頁中。例如,可以使用 SSI 包含時(shí)間/日期戳、版權(quán)聲明或供客戶填寫并返回的表單。對于在多個(gè)文件中重復(fù)出現(xiàn)的文本或圖形,使用包含文件是一種簡便的方法。將內(nèi)容存入一個(gè)包含文件中即可,而不必將內(nèi)容輸入所有文件。通過一個(gè)非常簡單的語句即可調(diào)用包含文件,此語句指示 Web 服務(wù)器將內(nèi)容插入適當(dāng)網(wǎng)頁。而且,使用包含文件時(shí),對內(nèi)容的所有更改只需在一個(gè)地方就能完成。

        因?yàn)榘?SSI 指令的文件要求非凡處理,所以必須為所有 SSI 文件賦予 SSI 文件擴(kuò)展名。默認(rèn)擴(kuò)展名是 .stm、.shtm 和 .shtml

        Web 服務(wù)器在處理網(wǎng)頁的同時(shí)處理 SSI 指令。當(dāng) Web 服務(wù)器碰到 SSI 指令時(shí),直接將包含文件的內(nèi)容插入 HTML 網(wǎng)頁。假如“包含文件”中包含 SSI 指令,則同時(shí)插入此文件。除了用于包含文件的基本指令之外,還可以使用 SSI 指令插入文件的相關(guān)信息(如文件的大小)或者運(yùn)行應(yīng)用程序或 shell 命令。

        網(wǎng)站維護(hù)經(jīng)常碰到的一個(gè)問題是,網(wǎng)站的結(jié)構(gòu)已經(jīng)固定,卻為了更新一點(diǎn)內(nèi)容而不得不重做一大批網(wǎng)頁。SSI提供了一種簡單、有效的方法來解決這一問題,它將一個(gè)網(wǎng)站的基本結(jié)構(gòu)放在幾個(gè)簡單的HTML文件中(模板),以后我們要做的只是將文本傳到服務(wù)器,讓程序按照模板自動(dòng)生成網(wǎng)頁,從而使治理大型網(wǎng)站變得輕易。

        所以,利用SHTML格式的頁面目的和 ASP 差不多,但是因?yàn)槭?API 所以運(yùn)轉(zhuǎn)速度更快,效率更高,比ASP快,比HTML慢,但由于可以使用服務(wù)器端包含,因此使頁面更新輕易(非凡是批量更新banner,版權(quán)等),想象一下吧,你有一段 HTML,要在中間穿插一些非凡的服務(wù)端腳本,比如插入其他 HTML 段落,你選擇 ASP 來完成這個(gè)任務(wù),但是假如任務(wù)更繁重,需要更多的時(shí)間,比如5s,這個(gè)時(shí)候你不用 ASP 而用 SHTML,或許處理時(shí)間就只用4s了.

      來源:無憂整理//所屬分類:XHTML教程/更新時(shí)間:2007-06-10
      相關(guān)XHTML教程