色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

從HTML 2.0到HTML5

  英文原文:A Brief History of Markup

  A Book Apart 的第一本書,由Jeremy Keith執(zhí)筆;本文是該書第1章。

  HTML是World Wide Web上統(tǒng)一的語言。使用它所提供的標簽,人類已經(jīng)創(chuàng)建了令人驚奇、姿態(tài)萬千的超鏈接的文檔網(wǎng)絡。看看AmazoneBayWikipedia,再看看個人博客和專為貓咪建立的站點,無一不是HTML的杰作。

  HTML5是這門通用語言的最新版。雖然這次升級的變化之大史無前例,但HTML更新?lián)Q代已經(jīng)不是第一次了。這門語言從誕生之日起一直在發(fā)展。

  在發(fā)明Web的同時,Tim Berners-Lee先生創(chuàng)造了HTML(HyperText Markup Language,超文本標記語言)。

  1991年,他寫了一篇名為“HTML Tags”的文檔另見更早的www-talk上的記錄),其中建議人們使用20來個元素編寫網(wǎng)頁。

  說到用尖括號包圍文本的標簽,并不是Tim先生的首創(chuàng)。更早的SGML(Standard Generalized Markup Language,標準通用標記語言)中就開始使用這種標簽了。Tim先生當時并沒有發(fā)明新語言,而是著眼于利用已經(jīng)存在的技術——在HTML5的發(fā)展過程中,這個傾向依然得到了體現(xiàn)。

  從IETF到W3C:HTML 4誕生記

  HTML 1?這個版本實際上是不存在的。最早的HTML官方規(guī)范,是由IETF(InterNET Engineering Task Force,因特網(wǎng)工程任務組)發(fā)布的HTML 2.0。這一規(guī)范中的許多特性,都是在已有實現(xiàn)的基礎上歸納總結出來的。比如說,1994年居于市場領導地位的Mosaic瀏覽器提供了一個<img>標簽,作者可以通過它在自己的文檔中嵌入圖像。后來,img元素就出現(xiàn)在了HTML 2.0中。

  W3C(World Wide Web Consortium,萬維網(wǎng)聯(lián)盟)繼IETF之后成為HTML后續(xù)標準的制定者,其官方網(wǎng)站是http://www.w3.org。20世紀90年代中期以后,W3C對HTML進行了幾次升級,直至1999年發(fā)布HTML 4.01。

  此時,HTML的發(fā)展走到了一個十字路口上。

  XHTML 1:符合XML標準的HTML

  HMLT 4.01之后的一個修訂版變成了XHTML 1.0。其中,X表示“eXtreme”(極端)。當時的Web開發(fā)人員在提到這個字母的時候,必須雙臂交叉,作出一個X的形狀來。

  誰說的?純屬瞎掰。那個X表示的是“eXtensible”(可擴展),而且也沒人要求你必須雙臂交叉。

  XHTML 1.0規(guī)范的內容與HTML 4.01完全相同,沒有添加任何新元素或新屬性。這兩個規(guī)范唯一的差別就是對HTML的語法作出了不同的規(guī)定。HTML給予了作者最大的自由度,他們可以按照自己的意愿去寫元素和屬性,但XHTML要求作者遵從XML規(guī)則;XML是W3C大多數(shù)技術規(guī)范的基礎,是一種更為嚴格的標記語言。

  語法規(guī)則變得更嚴格了,這本身沒有什么壞處。新規(guī)范的目的就是讓作者按照統(tǒng)一的風格來編寫標簽。此前的標簽和屬性可以是大寫、小寫,或者任意大小寫字母的組合,而有效的XHTML 1.0文檔則要求所有標簽和屬性必須一律小寫。

  XHTML 1.0發(fā)布的時候恰逢瀏覽器普遍開始支持CSS。開發(fā)人員意識到了Web標準的出現(xiàn),特別是在Web標準項目(The Web Standards Project)的倡導下,XHTML規(guī)定的這種更嚴格的語法被看成是寫標記的“最佳實踐”。

  然后,W3C發(fā)布了XHTML 1.1。

  雖然XHTML 1.0只不過是用XML來重新表示的HTML,但XHTML 1.1卻是真正的、純粹的XML。這意味著不能以text/html這樣的MIME類型來提供XHTML 1.1文檔。可是,如果有作者以XML的MIMI類型(application/xhtml+xml)來發(fā)布文檔,那么當時世界上最流行的Web瀏覽器——InterNET Explorer,又無法呈現(xiàn)該文檔。

  看起來W3C好像已經(jīng)開始與日常的Web發(fā)布脫節(jié)了。

  XHTML 2:我們不接受!

  如果達斯汀·霍夫曼(Dustin Hoffman)在電影《畢業(yè)生》(The Graduate)中的角色是一名Web設計師,那么W3C只會對他說一句話,就一句話:XML。[1]

  W3C在接管HTML的時候,HTML的版本已經(jīng)到了4?,F(xiàn)在,他們又著手開發(fā)XHTML 2,旨在把Web引向建立在XML之上的無比光明的美好未來。

  雖然XHTML 2的名字聽起來與XHTML 1非常類似,但它們的差別卻非常之大。與XHTML 1不一樣,XHTML 2與既有的Web內容都不兼容,甚至就連以前版本的HTML都不兼容。說白了,XHTML 2就是要成為一門純粹的語言,與以前規(guī)范的邋遢歷史沒有任何干系。

  沒想到竟是一場災難。

  分裂:WHATWG TF?

  一股反抗勢力在W3C內部逐步壯大。W3C熱衷于從理論角度構建純凈的標準,卻無視Web設計人員的需求。來自Opera、AppleMozilla的代表對這種傾向非常反感。他們希望那些支持創(chuàng)建Web應用的特性能夠得到更多的關注。

  2004年的一次工作組會議成了矛盾激化的導火索。伊恩·希克森(Ian Hickson)——當時還在Opera Software效力——建議以支持創(chuàng)建Web應用為目標來擴展HTML。這個建議被駁回了。

  心懷不滿的反抗者建立了自己的組織:Web Hypertext Application Technology Working Group(Web超文本應用技術工作組),簡稱WHATWG。

  從Web Apps 1.0到HTML5

  從一開始,WHATWG的工作方式就與W3C截然不同。W3C采取基于表決的方式:提出議題、討論議題,然后投票表決。而在WHATWG,同樣會提出和討論議題,但哪些特性可以寫入規(guī)范的最終決定權在編輯手中。這個編輯就是伊恩·希克森。

  表面上看,W3C的流程更民主也更公平。但實際上,政治博弈加上內部爭論,經(jīng)常會導致流程停滯不前。而在WHATWG,任何人都可以自由地發(fā)表意見,但負責拍板的則只有編輯一個人,因此工作效率明顯高很多。其實編輯也并非擁有絕對的權力:一個僅由受邀人員組成的指導委員會可以質疑編輯的偏執(zhí)做法。

  最初,WHATWG的大部分工作被分為兩個規(guī)范:Web Form 2.0Web Apps 1.0。這兩個規(guī)范都是在HTML的基礎上擴展而來的。后來,這兩個規(guī)范又被合并到一起,簡單地稱作HTML5。

  再次聯(lián)手

  在WHATWG開發(fā)HTML5期間,W3C繼續(xù)制定XHTML 2規(guī)范。如果說XHTML 2規(guī)范的制定速度很快那是忽悠人的。實際上,別提有多慢了。

  2006年10月,Tim Berners-Lee先生發(fā)表了一篇博客,承認將Web從HTML遷移到XML是行不通的。幾個月后,W3C簽發(fā)了新委任狀,成立了一個HTML工作組。這個工作組并沒有從頭開始,而是明智地決定在WHATWG工作成果的基礎上開發(fā)下一個HTML版本。

  一套起步停車的動作做下來以后,局面反倒讓人不理解了。W3C同時有兩個工作組,分別負責制定不同的、互不兼容的標記語言XHTML 2HTML 5(注意數(shù)字5前面有一個空格)。與此同時,還有一個獨立的組織——WHATWG,正在開發(fā)HTML5(沒有空格)規(guī)范,而該規(guī)范還將成為上述W3C中一個規(guī)范的基礎!

  每個想稿清楚上述狀況的Web設計人員都會發(fā)現(xiàn),還是破解電影《記憶碎片》(Memento)、《雷管》(Primer)中撲朔迷離的故事情節(jié)更容易一些,甚至就連摸清大衛(wèi)·林奇(David Lynch)這樣善用顛倒錯亂、詭異多變的形象來迷惑人的導演的套路都沒有那么復雜。

  XHTML已死,XHTML語法長生

  種種迷團終于在2009年煙消云散。W3C宣布不再續(xù)頒XHTML 2工作組的委任狀。XHTML 2作為一種格式實際上已經(jīng)死了好幾年了;這次的宣布差不多可以看成是為它補發(fā)了一張死亡證明。

  奇怪的是,XHTML 2并沒有平靜地逝去,不少興災樂禍的小人跳出來大放厥詞。XML反對者趁機奚落使用XHTML 1的人——連XHTML 1和XHTML 2幾乎沒有共同點這個事實都視而不見。

  這時候,那些遵照XHTML 1較為嚴格規(guī)則的作者又擔心起來,生怕HTML5又回到支持邋遢標記的老路上去。

  其實,這個擔心是多余的。HTML5允許邋邋遢遢的標記,也支持嚴格的標記,到底邋遢還是嚴格就要看編寫標記的人了。

  HTML5的時間線

  HTML5目前的狀態(tài)已經(jīng)不似先前那么含含糊糊了,但仍然還是不甚明了。

  有兩個工作組在圍繞HTML5工作。WHATWG正在使用它的“提交后評審”流程創(chuàng)建HTML5規(guī)范。而HTML Working Group則把這個規(guī)范作為輸入,并將其納入到了自己的“評審后提交”的流程當中。不難想見,這個聯(lián)盟并不和諧。最后,仍然還需要就類似“要空格還是不要空格?”這樣討厭的問題達成共識才行。

  對于剛剛涉足HTML5的Web開發(fā)人員來說,最令他們困惑的一個問題莫過于“這個規(guī)范什么時候能夠完工?。?rdquo;

  在一次采訪中,伊恩·??松岬紿TML5估計要等到2022年才能成為推薦標準。有些Web設計者聽他這么一說,立刻就激動起來。他們并不理解所謂的“推薦標準”意味著什么,但他們知道從現(xiàn)在開始數(shù)到2022,自己的10個手指頭根本就不夠用的。

  這種激動完全是沒有來由的。想一想吧,成為“推薦標準”,意味必須要有兩個HTML5的完整實現(xiàn)。考慮到這個規(guī)范涵蓋的范圍之廣,這個時間點恐怕都有點倉促了。歷史表明,沒有哪款瀏覽器在實現(xiàn)既有標準方面是做得出色的。僅僅支持一個小小的abbr元素,InterNET Explorer就用了10多年的時間。

  與HTML5真正有關系的日期應該是2012年。這是它預計將會成為“候選標準”的時間。成為“候選標準”,就意味著標準的制定工作結束了。

  不過,即便是這個時間對Web開發(fā)人員來說也不是特別重要。真正重要的問題是瀏覽器從什么時候開始支持HTML5的特性。從瀏覽器一支持CSS 2.1的部分特性,我們就開始使用那些特性了。要是等到所有瀏覽器都完全支持CSS 2.1我們才去使用它,那么恐怕現(xiàn)如今我們在癡癡地等呢。

  HTML5不也一樣嘛。沒有人規(guī)定這個時間點,說不到這個時間你就不能使用HTML5。只要瀏覽器支持,我們就先使用那些它們支持的特性就不完了嗎。

  切記,HTML5并不是一門憑空造出來的新語言。它的標記變化都是革新性的,不是革命性的。無論你現(xiàn)在使用哪個版本的HTML創(chuàng)建網(wǎng)站,你都可以說自己已經(jīng)在使用HTML5了。


  [1] 男主角本杰明是一位以優(yōu)異成績畢業(yè)的大學生,其父親的好友麥奎爾先生對他未來職業(yè)規(guī)劃的建議只有一句話:塑料。——譯者注

it知識庫從HTML 2.0到HTML5,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 南漳县| 休宁县| 吴江市| 郧西县| 大田县| 昌图县| 延川县| 连云港市| 彭泽县| 界首市| 新巴尔虎右旗| 富锦市| 长治县| 平度市| 绥棱县| 晋江市| 阳新县| 镇巴县| 时尚| 泾源县| 泰兴市| 蓝山县| 阳山县| 台东县| 霸州市| 同心县| 白水县| 田林县| 广东省| 张家港市| 如皋市| 华坪县| 铅山县| 达孜县| 福清市| 开江县| 兴仁县| 高尔夫| 建平县| 大田县| 准格尔旗|