當前位置:
首頁 > 最新 > web前端開發基礎2.4

web前端開發基礎2.4

我已經向大家介紹了 HTML 結構與常用標籤,也提到過特定標籤一些常用的屬性,今天想講一下我自己對 HTML 發展過程的一個小困惑並且將 HTML 部分文章進行小復盤。

HTML? XHTML? XML? HTML 5?

講真,由於並沒有專業學過編程,我在之前只聽說過 HTML 和 H5。當我在準備開始介紹 CSS時,才發現原來 HTML 有如此曲折的發展史,也讓我有點傻傻分不清楚,所以決定寫這樣一篇文章來解答一下這個的疑問——為何會 HTML 會有這麼多面?

現在使用的網頁語言規範是由萬維網協會(World Wide Web Consortium,簡稱W3C)發布的,網頁的域名中 www代表的也是萬維網。www可以讓瀏覽器訪問web伺服器上的頁面。之前已經說過 HTML 是一種超文本標記語言,也就是用特定的標籤來表示包括圖片、鏈接、音樂等非文字元素各部分的語言。萬維網是一個大系統,裡面有無數的互相鏈接的超文本,但它不等於互聯網,萬維網只是互聯網提供的服務之一。

HTML 和 HTML 之間是不同的。 由於它是最早的網頁語言,所以 HTML 1.0~2.0 這些早期版本中它需要知道的東西並不多,寫出來的頁面也很不好看,畢竟實現了超文本了,所以對於規範神馬的基本當做是浮雲。編碼不規範,結構混亂,開發和維護都很不方便,需要很好的終端才能顯示,手機、PDA什麼的都不能適應。隨著網路越來越強大,這些暴露出來的問題都亟待解決。

圖1 1988年Google網頁

「瀏覽器戰爭」過程中,每個瀏覽器公司不斷增加自己的專用擴展包,試圖保持領先。但「鷸蚌相爭,魚兒受害」,在當時web 開發人員不得不寫兩種單讀的 web 頁面,一個用於 Netscape (網景)瀏覽器,另一個用於 Internet Explorer,這一時期是 HTML 3 發行時期,但這使 HTML 更加陷入混亂的局面。

圖2 主要瀏覽器在1996年至2009年估計佔有率

之後,瀏覽器大戰結束,萬維網協會(W3C)跳出來,計劃創建一個唯一的HTML標準,以適用於所有瀏覽器,這給「戰後區」帶來了曙光。W3C 將原本的 HTML 拆分成兩個部分:用於表現的CSS 和用於實現結構的 HTML。

隨後的1999年,HTML 4.01 版發布,可以說這一版規範是 HTML 發展上的一大成就,4.01 和 4.0 的差別不大,但是幾乎所有瀏覽器都能很好的顯示內容,因此這一版持續了十幾年。

在這段較為平靜的時間裡,出現了一個新事物——XML。XML 是可擴展標記語言,可以跨平台,可自由創建標籤,主要用來傳輸和存儲數據,是對 HTML 的一種補充。但是,實際上 XML雖然數據轉換能力強大,但面對現有巨多的基於 HTML語言設計的網站,顯然它的到來還太早了,讓 HTML 有些心煩意亂,它們兩個不情願的結合在一起,從而誕生了 XHTML。

XHTML 比 HTML 更加嚴格和規範,是一個充當 HTML 角色的 XML,由 HTML 向 XML 的過渡技術。它要求必須要有結束標籤,必須正確嵌套,屬性必須在引號之間,必須使用小寫字母。XHTML 承諾因為它的嚴格要求和添加的一些新方法就可以平息 web 所有的爭端。然而想像很豐滿,但現實很骨感。大多數人更喜歡 HTML 的靈活性,只希望能對 HTML 進行改進,XHTML 1.0 並沒能受到大眾的青睞,這次結合的結果也並不美好。

圖3 一個基於XML語法的烹飪技術書刊——RecipeBook

很快,HTML 5應運而生,取代了XHTML,它支持了 HTML 4.01標準的大部分特性,並且提供了一些新特性,能廣泛適應瀏覽器。這些也正是開發人員想要的,因此H5 成為了現在大家公認的標準,也成為 HTML 歷史上的又一里程碑。

總的來說,在H5 出現以前,HTML的發展趨勢是:HTML>>XHTML>>XML。但由於 H5強大的兼容性,在2009年 W3C 已經宣布停止了對 XHTML 2 的開發,轉而大力支持 HTML 5。

《web前端開發基礎: HTML篇》復盤

前面啰嗦這麼多,只是希望能幫助大家在腦子裡對 HTML 有一個更加清晰的認知。這段時間斷斷續續的寫了這幾篇文章,自己對內容都不是很熟悉了,借這一篇梳理一下。

首先,在《web前端開發基礎1》中介紹了一個完整的web程序的三大組成部分:HTML、CSS和JavaScript,講了怎麼用最簡單的編輯器寫最簡單的 HTML 文檔。

其次,在《web前端開發基礎2.1》中說明了 HTML 的含義是什麼,基本結構是什麼以及標籤屬性是什麼。隨後的 2.2~2.3 介紹了最常用的10種 HTML 標籤並簡單結合了相應的屬性。

這一篇2.4主要將 HTML 的發展史,介紹了 HTML家族的基本成員。

結語

HTML 部分還有更多比較高級的內容,這些在後面更進階的階段可能再出一個系列,下一篇開始 3.n 時代,主講 CSS。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 U程I 的精彩文章:

TAG:U程I |