重新認識一下網(wǎng)頁標準

中文:什么是網(wǎng)頁標準?
原作者:Nicholas C. Zakas
請尊重版權,轉載請注明出處!
譯序:現(xiàn)在HTML5如日中天,各大瀏覽器都聲稱支持或者將支持HTML的特性,好像HTML5能夠讓互聯(lián)網(wǎng)更美好,能讓網(wǎng)站開發(fā)人員解放一樣?;蛟S大家被壓抑太久,或許大家太樂觀,或許標準真的已經(jīng)深入人心了??粗鹄崩钡腍TML5,想想XHTML標準的尷尬,或許這個時候看看這篇寫于2008年底文章會讓我們更理解到底什么才是標準,標準能做什么,而我們應該做些什么……——神飛
在網(wǎng)站開發(fā)過程中,你會聽到詞語“標準”很多次。我的意思是,很多次。Internet Explorer因為不支持標準而廣為詬病,Opera自稱是唯一的一個真正努力地完全實現(xiàn)標準的瀏覽器,而全世界的開發(fā)人員又相互責備沒有遵循標準??尚Φ氖牵蟛糠秩烁静焕斫馐裁词菢藴驶蛘咚鼈兪窃趺醋兂蛇@樣的。
讓我們以互聯(lián)網(wǎng)上的頭號神話來說起:W3C創(chuàng)造了標準。這完全是錯誤的。W3C宣稱的目標是創(chuàng)造標準,但是它不能夠在實際上創(chuàng)造它們。為什么呢?因為,很簡單,標準是大多數(shù)人決定要做的事情。因此,網(wǎng)頁標準是大部分瀏覽器廠商決定要追隨的。W3C可以推薦應該怎么做,但是它沒有權利強制實施。如果W3C真的可以創(chuàng)造標準,那么我們也不會仍然在等待相關的瀏覽器支持XHTML了,它在1999年就完成了。W3C沒有能力強制瀏覽器廠商做任何事情;每個人都能決定自己想做什么。甚至參與到W3C的瀏覽器廠商都不遵循某些規(guī)范(全部的瀏覽器廠商都這樣)。
所以如果我和我的同伴這個周末聚到一起然后想出了一個很酷的JavaScript特性,那么我們就和W3C一樣了。如果我們確定可以讓Mozilla、Apple、Microsoft和Opera實現(xiàn)這個特性,那么我們就已經(jīng)創(chuàng)建了一個新的標準了——和W3C一樣。沒有一個官方的標志或印章可以讓一些東西成為標準,它只是由兩個或更多瀏覽器來實現(xiàn)的。
W3C在創(chuàng)建標準上曾經(jīng)很傳統(tǒng)的不好。它們真正擅長的是文檔化和標準化已經(jīng)在瀏覽器中實現(xiàn)的東西。這樣導致了HTML 4 和DOM 1的創(chuàng)建大部分是基于在IE 4中的創(chuàng)新。是的,同學們,微軟在創(chuàng)建這些標準方面是比其它任何瀏覽器都更有影響力的,因為它們不斷前進和創(chuàng)新而等不及有人告訴它們已經(jīng)好了。
事實上,微軟的很多創(chuàng)新都已經(jīng)成為它們自己的標準,比如innerHTML 屬性,XMLHttpRequest 對象,通過designMode的富文本編輯。沒有瀏覽器敢不支持這些;這使它們成為了標準。W3C現(xiàn)在正在走一些流程將它們引入到HTML 5 規(guī)范 和XMLHttpRequest規(guī)范中。
責罵微軟不支持標準似乎變得很流行,但是人們可以說,如果世界上最流行的瀏覽器不去實現(xiàn)某些東西,它就不會真正的成為標準。保守估計Internet Explorer在全球有80%左右的市場份額(2008年)。也就是說只有20%的互聯(lián)網(wǎng)用戶在使用“兼容標準”的瀏覽器。當只有市場上20%的用戶使用它,它會是一個標準嗎?仔細考慮一下吧。
真相是微軟只是跟隨了互聯(lián)網(wǎng)中最頑固的企業(yè)的領導者:網(wǎng)景(Netscape)。網(wǎng)景是第一個說“我們要做我們想做的”的,然后引入了<blink>標簽。歷史表明在瀏覽器廠商開始創(chuàng)新的時候,網(wǎng)絡也跟著進步了。微軟不是唯一這樣做的。Mozilla也實現(xiàn)了不標準的特性,比如XSLTProcessor;Safari 實現(xiàn)了<canvas> 標簽;Opera 實現(xiàn)了<event-source> 標簽和window.opera 對象。然而沒有人抱怨它們做出了自己的東西和創(chuàng)新……只有微軟是個壞小子。為什么這樣?
正如Alex Russell多次指出的,創(chuàng)新并不在W3C的手中。真正的創(chuàng)新,可以帶動互聯(lián)網(wǎng)發(fā)展的創(chuàng)新,需要來自于瀏覽器廠商。讓自由的市場來決定瀏覽器中最有用的特性然后讓W3C去規(guī)范它吧。那才是真正的標準。等到偉大的HTML 5規(guī)范在2022完成了,不會推動網(wǎng)絡向前發(fā)展。得讓像Alex一樣聰明的家伙開發(fā)瀏覽器才行(推動web進步)。
相關文章
AudioContext 實現(xiàn)音頻可視化(web技術分享)
這篇文章主要分享的是web技術的 AudioContext 實現(xiàn)音頻可視化,要實現(xiàn)音頻可視化得先實現(xiàn)一些炫酷的效果需要借助 Web Audio API提供的一些方法 AudioContext,下面詳細內(nèi)容2022-02-23- 這篇文章主要給大家介紹了web技術中的WebRTC記錄音視頻流,文章內(nèi)容圍繞主題展相關資料,需要的小伙伴可以參考一下,希望對你有所幫助2022-02-23
- 這是我通過網(wǎng)上查閱資料總結的一些編碼規(guī)范,用于鞏固對html,css頁面重構時的基礎,需要的朋友可以參考下2020-12-19
前端編碼規(guī)范(4)—— CSS 和 Sass (SCSS) 開發(fā)規(guī)范
這篇文章主要介紹了前端編碼規(guī)范(4)—— CSS 和 Sass (SCSS) 開發(fā)規(guī)范,需要的朋友可以參考下2017-01-21Web前端開發(fā)規(guī)范2017(HTML/JavaScript/CSS)
這是一份旨在增強團隊的開發(fā)協(xié)作,提高代碼質(zhì)量和打造開發(fā)基石的編碼風格規(guī)范,其中包含了 HTML, JavaScript 和 CSS/SCSS 這幾個部分。我們知道,當一個團隊開始指定并實行2017-01-21- 這篇文章主要為大家介紹了前端開發(fā)團隊遵循和約定的代碼書寫規(guī)范,意在提高代碼的規(guī)范性和可維護性,需要的朋友可以參考下2017-01-21
- 這篇文章主要為大家詳細介紹了響應式Web之流式網(wǎng)格系統(tǒng)的相關資料,感興趣的小伙伴們可以參考一下2016-07-04
在網(wǎng)頁標題欄上和收藏夾顯示網(wǎng)站logo的實現(xiàn)方法
下面小編就為大家分享一篇在網(wǎng)頁標題欄上和收藏夾顯示網(wǎng)站logo的實現(xiàn)方法。希望對大家有所幫助。一起跟隨小編過來看看吧,祝大家游戲愉快哦2016-03-16- 基于很多用戶都在下載Visual Foxpro 6.0,但是有安裝vtp6.0經(jīng)驗的朋友確很少,在安裝過程中總會出現(xiàn)這樣那樣的問題,基于這些問題,下面小編抽個時間把Visual Foxpro 6.02015-09-09
網(wǎng)站日志200 0 64狀態(tài)碼的分析(協(xié)議子狀態(tài))
網(wǎng)站日志200 0 64狀態(tài)碼的分析介紹2012-10-29