閒話HTML、XHTML、HTML5哥三兒

注:本文非原創,其素材皆來自互聯網,經本人稍加整理而出。

   

    HTML跟XHTML什麼關係?它們之間有什麼區別,都說HTML要向XML過渡,可現在又推出了HTML5?爲什麼要向XML過渡,它有什麼好?既然XHTML是用來替代HTML 的,爲什麼還推出HTML  5?XHTML 1.0會取代HTML 5麼?可XHTML2.0又爲什麼中途夭折了呢?這麼些個版本,新手到底該先學習哪個?好糾結吶!


wKioL1SJBDHAPf48AAEDPTOP27E800.jpg

HTML

    先說說我們熟悉的HTML吧,它是一種可以告訴瀏覽器如何顯示內容的語言.發展的歷史可以參http://zh.wikipedia.org/wiki/HTML

HTML是一個鬆散結構的標記語言,其中包含的標籤大致分以下四種:

  1. 文檔標記(document markup): <h1></h1> <p></p>

  2. 表示性元素(presentational element):<b></b> <s></s>

  3. 短語元素(phrase element):<acronym></acronym>

  4. 圖像和其它媒體(p_w_picpaths&media element):<img/>

    從它包含的衆多標籤看來,它是一個相對較弱的規則,將數據的結構,表現都混在一起,沒有很強的語義. 與XML相比差別很大.

    所以在HTML最初的幾個版本開發中,並沒有成爲W3C推薦的標準,直到2000年5月15日發佈,基於嚴格的HTML 4.01語法,是國際標準化組織國際電工委員會的標準.

XML是互聯網用來傳輸數據一個很理想的語言(稍後解釋),但是讓瀏覽器支持很難,所以在這過程當中就要一步步慢慢過渡. XHTML出現了.


XHTML


1、什麼是XHTML?


     HTML是一種基本的WEB網頁設計語言,XHTML是一個基於XML的置標語言,看起來與HTML有些相象,只有一些小的但重要的區別,XHTML就是一個扮演着類似HTML的角色的XML,所以,本質上說,XHTML是一個過渡技術,結合了XML(有幾分)的強大功能及HTML(大多數)的簡單特性。


    2000 年底,國際W3C(World Wide Web Consortium)組織公佈發行了XHTML1.0版本。XHTML  1.0是一種在HTML  4.0基礎上優化和改進的的新語言,目的是基於XML應用。XHTML是一種增強了的HTML,它的可擴展性和靈活性將適應未來網絡應用更多的需求。下面是W3C的HTML工作組主席StevenPemberton回答的關於XHTML的常見基礎問題。


問:什麼是XHTML?


    答:XHTML 是一種爲適應XML而重新改造的HTML。當XML越來越成爲一種趨勢,就出現了這樣一個問題:如果我們有了XML,我們是否依然需 要HTML?爲了回答這個問題,1998年5月我們在舊金山開了兩天的工作會議,會議的結論是:需要。我們依然需要使用HTML。因爲大量的人們已經習慣 使用HTML來作爲他們的設計語言,而且,已經有數以百萬計的頁面是採用HTML編寫的。


問:爲什麼XHTML 1.0相對HTML4.0獨立發展?


    答: 並不是這樣。XHTML恰恰就是HTML 4.0的重新組織,(確切的說它是HTML 4.01,是一個修正版本的HTML   4.0,只不過以XHTML 1.0命名發行。)   它們在XML裏的解釋會有一些必要的差別,但另一方面,它們依然非常相似,我們可以把XHTML的工作看作是HTML 4.0基礎上的延續。


問:XHTML 1.0如何實現XML標準?


    答:XHTML 就是一種XML應用。它採用XML的DTD文件格式定義,並運行在支持XML的系統上。這裏要感謝XML的Namespaces功 能,瀏覽器製造商不需要再創造新的私有標籤(tags),他們只需要在XHTML代碼裏包含XML代碼片段,或者XML代碼裏包含XHTML代碼片段。


2、與HTML相比XHTML有什麼特點?


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


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


(3)使用XHTML的另一個優勢是:它非常嚴密。當前網絡上的HTML的糟糕情況讓人震驚,早期的瀏覽器接受私有的HTML標籤,所以人們在頁面設計完畢後必須使用各種瀏覽器來檢測頁面,看是否兼容,往往會有許多莫名其妙的差異,人們不得不修改設計以便適應不同的瀏覽器。


(4)XHTML是能與其它基於XML的標記語言、應用程序及協議進行良好的交互工作。


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


(6)在網站設計方面,XHTML可助你去掉表現層代碼的惡習,幫助你養成標記校驗來測試頁面工作的習慣。


看到這裏,我就更加好奇爲什麼大家都拼了命的要向XML過渡了,到底XML有什麼好呢?試着弄清楚些,但也許不是很深刻.


XML


    可擴展置標語言(eXtensible Markup Language,簡稱XML),又稱可擴展標記語言,是一種置標語言。置標指計算機所能理解的信息符號,通過此種標記,計算機之間可以處理包含各種信息的文章等。如何定義這些標記,既可以選擇國際通用的標記語言,比如HTML,也可以使用像XML這樣由相關人士自由決定的標記語言,這就是語言的可擴展性。XML是從標準通用置標語言(SGML)中簡化修改出來的。它主要用到的有可擴展置標語言、可擴展樣式語言(XSL)、XPath等。


    XML設計目的用來傳送及攜帶數據信息,XML不用來表現或展示數據,HTML語言恰恰用來表現數據,所以XML用途的焦點是它說明數據是什麼,以及攜帶數據信息。


    簡單地來講,XML被設計用於傳輸和存儲數據,其焦點是數據的內容,而超文本標記語言被設計用於顯示數據,其焦點是數據的外觀。


    在向XML邁進的過程中並不那麼理想,比如XHMTL2.0中途夭折了,HTML5草案公佈了.。


    XHMTL1.0讓編碼者的編碼方式進一步規範了,這是好事.但XHTML2.0的宣告終止讓大家有點迷惑了,因爲XHTML2.0有點兒過了.


    當萬維網聯盟(World Wide Web Consortium (W3C))於 2002 年 8 月 5 日發佈  XHTML 2.0 的第一個工作草案時, 最讓人吃驚的是:與其先前的版本不同,它不是向後兼容的。 對於先前的發行版,如從 HTML 4.01  轉到 XHTML 1.0 以及後來從 XHTML 1.0 到 XTHML 1.1,變化都是添加一些內容; 可以讀取 XHTML   1.0(過渡的)文檔的瀏覽器也可以理解 HTML 4.01 文檔。而 XHTML 2.0 不是那樣的。


HTML5


    XHTML2.0終止了,但HTML5卻讓大家又激動了一次。HTML5 是 HTML、XHTML 以及 HTML DOM 的新標準。它仍處於完善之中。但目前爲止的大部分現代瀏覽器已經支持 HTML5 。


    XHTML 1.0 是 XML 風格的 HTML 4.01。XHTML 1.1 主要是初步進行了模塊化。HTML5 是下一代 HTML,取代 HTML 4.01。

    W3C 原本確實計劃用 XHTML 系列替代 HTML 4.01,但 XHTML 系列實際上只活到了 1.1(1.1 和夭折的 1.2 已經體現出過分 XML 的跡象,而 W3C 的理想其實在瘋狂的 XHTML 2 身上,當然,它沒能誕生),還沒脫離 HTML 4.01 的陰影就死了。還沒等 XHTML 興起,它的地位就被 HTML5 取代了。

    另外,HTML5 規定了兩種 serialization 形式,一種是寬鬆的 HTML 風格,一種是嚴格的 XML/XHTML 風格。人們有時把 XML/XHTML 風格的 HTML5 serialization 稱作「XHTML5」,但這個「XHTML」只剩下名號了,和 XHTML 1/2 的獨立規範不一樣,應當避免混淆。

    我記得有個漫畫講述了 XHTML 的故事,可以去找找。另外,《HTML5 for Web Designers》也提到了這段歷史。

    XHTML已死,有事燒紙。但確實,XHTML 帶來的書寫風格仍然受大家喜愛。儘管 HTML5 對標籤大小寫、標籤閉合、屬性值引號等都不強求,但人們還是更願意編寫或看到 XHTML 風格的整潔代碼。不過,XHTML 的一些過於冗餘的寫法並不受 HTML5 規範推薦(比如布爾屬性的寫法)。HTML5 沒有 XHTML 那麼理想主義。   


 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章