- HTML5+CSS3基礎(chǔ)開發(fā)教程(第2版)
- 張珈珣 范立鋒編著
- 932字
- 2020-09-25 15:59:40
1.1 HTML發(fā)展史
在真正開始接觸HTML5之前,我們有必要首先了解一下HTML的發(fā)展史。HTML是隨著網(wǎng)頁技術(shù)的出現(xiàn)而誕生的,它的全稱是HyperText Markup Language,即超文本標(biāo)記語言,主要用于描述網(wǎng)頁文檔結(jié)構(gòu)。通俗地說,HTML規(guī)定了一組由尖括號(hào)組成的能夠提供各種功能的標(biāo)簽,通過不同標(biāo)簽的組合使用來構(gòu)建頁面。
HTML從誕生至今,主要經(jīng)歷了幾個(gè)比較關(guān)鍵的版本。
1.HTML雛形誕生
1991年,蒂姆·伯納斯·李(Tim Berners-Lee)編寫了一份叫作“HTML標(biāo)簽”的文檔,該文檔包括了大約20個(gè)用來標(biāo)記網(wǎng)頁的HTML標(biāo)簽。這是一個(gè)非官方的版本,是HTML的雛形。
2.第一個(gè)官方版本
HTML的第一個(gè)官方版本是由IETF(因特網(wǎng)工程任務(wù)組)推出的HTML 2.0,在該版本問世之前,一些標(biāo)簽的功能已經(jīng)被實(shí)現(xiàn)。
3.HTML發(fā)展拐點(diǎn)
當(dāng)W3C(萬維網(wǎng)聯(lián)盟)取代IETF成為HTML的標(biāo)準(zhǔn)組織后,HTML的版本被頻繁修改。隨著標(biāo)簽數(shù)量的增加,HTML能夠提供的功能也越來越完善。直到1999年的HTML 4.01版本,HTML到達(dá)了它的第一個(gè)拐點(diǎn),并被普遍應(yīng)用。
4.XHTML的沒落
在HTML 4.01之后的版本變?yōu)閄HTML 1.0,其中X代表eXtensible(擴(kuò)展)。XHTML 1.0與HTML 4.01相比,并未引入任何新的標(biāo)簽或?qū)傩裕皇窃谡Z法上進(jìn)行了嚴(yán)格的要求。例如,HTML 4.01允許使用大寫或小寫字母標(biāo)識(shí)標(biāo)記元素和屬性,而XHTML則只允許小寫字母。嚴(yán)格的語法規(guī)范帶來的好處是統(tǒng)一的代碼風(fēng)格,這在一定程度上為Web開發(fā)者提供了便利。
然而在XHTML 1的后續(xù)版本XHTML 2卻發(fā)生了很大的變化,該版本不再兼容之前的版本(甚至之前的HTML規(guī)范)。由于HTML 4已被普遍應(yīng)用和接受,要完全放棄原有標(biāo)準(zhǔn)是不現(xiàn)實(shí)的,無論對(duì)于Web開發(fā)者還是瀏覽器制造商來說都是不可接受的。這也注定了XHTML 2逐步走向沒落。
5.HTML5的萌芽
W3C組織于2009年宣布終止XHTML 2的開發(fā)進(jìn)程,轉(zhuǎn)向一種新的規(guī)范——HTML 5。非常有趣的是,W3C是以WHATWG組織的研究成果為基礎(chǔ)進(jìn)行發(fā)展的,而WHATWG組織正是當(dāng)年W3C的反對(duì)者聯(lián)盟。W3C組織的方向轉(zhuǎn)變?cè)斐闪诉@一現(xiàn)狀,目前,同時(shí)有兩個(gè)組織在制定自己的規(guī)范。
6.HTML5為移動(dòng)而生
HTML5之所以能夠迅速受到廣大開發(fā)者的青睞應(yīng)當(dāng)歸功于喬布斯發(fā)表的公開信《關(guān)于FLASH的幾點(diǎn)思考》論文,其提出HTML5更適合移動(dòng)開發(fā)的六點(diǎn)主要原因更是奠定了HTML5在跨平臺(tái)的移動(dòng)設(shè)備上贏得最終勝利。HTML5改變Web開發(fā)的局限性,基于HTML5開發(fā)方便構(gòu)建類似客戶端軟件的網(wǎng)頁版App,可以訪問磁盤系統(tǒng)和攝像頭等敏感設(shè)備,將原本桌面應(yīng)用軟件開發(fā)所擅長(zhǎng)的領(lǐng)域帶到Web開發(fā)領(lǐng)域,摒棄了Web開發(fā)的種種痛點(diǎn),將Web開發(fā)帶入了新的紀(jì)元。
- Apache Spark 2 for Beginners
- C語言程序設(shè)計(jì)實(shí)訓(xùn)教程
- INSTANT OpenNMS Starter
- 青少年P(guān)ython編程入門
- WebRTC技術(shù)詳解:從0到1構(gòu)建多人視頻會(huì)議系統(tǒng)
- JavaScript入門經(jīng)典
- 硅谷Python工程師面試指南:數(shù)據(jù)結(jié)構(gòu)、算法與系統(tǒng)設(shè)計(jì)
- Learning Unreal Engine Android Game Development
- SSM開發(fā)實(shí)戰(zhàn)教程(Spring+Spring MVC+MyBatis)
- ASP.NET程序開發(fā)范例寶典
- INSTANT Silverlight 5 Animation
- Machine Learning With Go
- Apache Solr PHP Integration
- SSH框架企業(yè)級(jí)應(yīng)用實(shí)戰(zhàn)
- JavaScript Mobile Application Development