W3C 日前宣布將從2009年底起終止同XHTML 2 工作小組的合約,並以此暗示曾經一度野心勃勃的XHTML 2 的正式死亡。 Web 設計界是否該因此而恐慌?畢竟XHTML 1.x 是所有對Web 標準驗證有著某種情節的人的首選,然而事實並非如此,XHTML 2.0 偃旗息鼓已有時日,W3C 只是明確了它的死亡日期,並將主要精力傾注到他們的新寵兒,HTML 5 身上。
如何看待Web 設計師所鍾愛的XHTML?
要弄清楚XHTML 如何獲得人們的青睞,得從HTML4 說起。 HTML 4 是一種鬆散的語言,它擁有很多選項,囊括了太多人們對Web 的試驗性想法,一些是好的,一些是壞的,然而,要HTML 4 為蹩腳的網頁代碼負責,好比要英語為低劣的小說負責。 HTML 4 也可以結構嚴謹並擁有合法的語義,只要設計師知道該如何使用它。
而XHTML 1.0 更嚴格,那些驗證工具更容易指出其中的錯誤,如果你很懶,又想保證自己的程式碼結構嚴謹,XHTML 1.x 要容易檢查得多。
然而問題是,XHTML 的使命並非單單如此,XHTML 的使命在於它名字中的那個X,X 的存在不是為了耍酷,而是因為XHTML 事實上屬於XML。象正在為HTML 5 細則工作的Henri Sivonen 指出的那樣,XHTML 事實上有兩個意義,一是技術上的,一是市場上的。
從技術的角度,XHTML 原本是要以application/xhtml+xml MIME 類型輸出純粹的XML 的,然而這種情形很少見,這並非說XML 不重要,事實上未來的XHTML 5 將對HTML 5 提供序列化服務。而XHTML 的大量使用更多是基於市場的角度,換句話說,那些採用XHTML 語法的網頁仍然被瀏覽器按text/html MIME 類型渲染,因此,儘管這些文件屬於XML,但它們並沒有被當作真正的XML,而是按HTML 進行渲染。
人們為什麼喜歡XHTML?
既然XHTML 是HTML,那些喜歡XHTML 的人又是出於什麼樣的初衷呢?答案是,XHTML 鼓勵良好的程式碼習慣,所有標籤都需要完整,嚴謹,XHML 可以產生比HTML 4 更乾淨的程式碼。
然而HTML 5 已經解決了HTML 4 中大部分的這類問題,它允許你使用XHTML 1.x 式的嚴謹程式碼,當然也允許HTML 4 式的鬆散程式碼,這意味著, Web 設計師們之前寫的XHTML 1.x 程式碼可以直接前往HTML 5,只需更改doctype 即可。
XHTML 2.0 錯在哪裡?
儘管初衷是好的,但XHTML 2.0 的夭亡來自兩件事,第一,它不向前兼容,意味著你寫的XHTML 1.x 代碼無法直接用於XHTML 2.0, 相反, HTML 5 卻向前兼容。第二,XHTML 2.0 並非HTML 的XML 化,而是全新的體系,它忽略了設計師們的需求。
而HTML 5 包含了設計師們需要的很多東西,本地的音頻,視頻支持,多欄佈局工具,離線數據庫,本地的矢量圖支持,這一切,XHTML 絲毫沒有觸及。
HTML 5 的光明未來
XHTML 2.0 雖然已被提出多年,然而迄今沒有任何瀏覽器實現對它的任何支持,HTML 5 卻得到了幾乎所有現代瀏覽器到青睞,包括Firefox, Safari, Chrome, Opera,甚至IE8 也實現了對它的某些支持。
那些在Web 領域野心勃勃的大廠商,例如Google, Apple,已經推出基於HTML 5 的Web 服務,使用本地化視訊支援與本地資料庫實現了各種應用,而基於XHTML 2.0 的應用卻幾乎沒有有。
另外,HTML 5 也推出了XHTML 5 細則,XHTML 5 向目前Web 中大量基於XHTML 1.x 的網頁伸出橄欖枝,XHTML 1.x 如果僅是作為HTML 的一種XML 式編碼風格,並不會被遺棄,事實上,還會工作得更好。