Web標(biāo)準(zhǔn):文檔類型和網(wǎng)頁(yè)瀏覽器

原文: http://www.alistapart.com/articles/beyonddoctype
作者:Aaron Gustafson
譯者:zhaozy in 3user.com
轉(zhuǎn)載請(qǐng)注明作者和譯者信息,謝謝!
進(jìn)步總是要有代價(jià)的. 對(duì)網(wǎng)頁(yè)瀏覽器來(lái)說(shuō), 由于開發(fā)者像是宣傳真理一樣一些編輯器和瀏覽器(特別是Internet Explorer), 用戶們?yōu)榇嘶ㄙM(fèi)很多的成本. 而當(dāng)這個(gè)瀏覽器推出了一個(gè)新版本, 然后又修正了之前版本的一些錯(cuò)誤和對(duì)規(guī)范的誤解(或是引入了新的), 或是以任何方式改變行為時(shí). 站點(diǎn)突然崩潰了, 然后我們的客戶, 我們的老板和用戶們都感覺到非常的不開心.
我們也許可以花上一段時(shí)間來(lái)解釋為什么我們的網(wǎng)站壞了, 但是如果他們沒有被破.壞那不是更好嗎? 一點(diǎn)點(diǎn)背景介紹
在成功的放出了更好的支持CSS的Internet Explorer 7的動(dòng)力下, IE團(tuán)隊(duì)開始在一個(gè)嶄新的渲染引擎(更好的遵照CSS 2.1規(guī)范)上開始進(jìn)行IE 8的開發(fā)工作. 在他們的努力下, 瀏覽器已經(jīng)可以相當(dāng)精確地表現(xiàn)出 "Acid2 test" (http://webstandards.org/action/acid2/) . 這些你跟進(jìn)的消息, 意味著IE將很快的支持生成內(nèi)容和數(shù)據(jù)的URLs, 而且經(jīng)確認(rèn), hasLayout會(huì)被永遠(yuǎn)取消. 它的表現(xiàn)結(jié)果會(huì)讓其他通過(guò)Acid2測(cè)試的瀏覽器們進(jìn)行投票(包括: Safari, iCab, Konqueror, and Opera. Firefox3也已經(jīng)通過(guò)了Acid2測(cè)試,但是在文章編寫的時(shí)候還沒有放出.)
在新引擎的開發(fā)過(guò)程中, IE團(tuán)隊(duì)謹(jǐn)記IE 7放出后的反面評(píng)價(jià). 一些web標(biāo)準(zhǔn)的狂熱者甚至是一部分微軟的崇拜者感覺到在"IE7中他們做得還不夠 (程序缺陷的修正和CSS支持的改進(jìn)上)". 但是有很大的一群開發(fā)者在感到疑惑, 因?yàn)樗麄兊木W(wǎng)站在IE6中表現(xiàn)的很完美, 但是到了IE7就完全崩潰了. web標(biāo)準(zhǔn)倡導(dǎo)者 Roger Johanssen 在他的博客中提出了 "頁(yè)面被破壞的三大原因" (http://www.456bereastreet.com/archive/200611/three_reasons_sites_break_in_internet_explorer_7/), 這些都驅(qū)使大家去改善對(duì)標(biāo)準(zhǔn)的支持. IE開發(fā)團(tuán)隊(duì)發(fā)現(xiàn)了第四點(diǎn): 文檔類型轉(zhuǎn)換(DOCTYPE switch), 一個(gè)啟用現(xiàn)代CSS布局的核心技術(shù)在標(biāo)志兼容性上有致命的缺陷. 文檔類型轉(zhuǎn)換器失效了
回到1998年, Todd Fahrner 的 "came up with a toggle(http://web.archive.org/web/20030212115103/http://www.geocrawler.com/archives/list-name.mbox/123/1998/7/0/1037920/)" 方法能允許一個(gè)瀏覽器提供兩套渲染模式: 一是給期許遵守標(biāo)準(zhǔn)的開發(fā)者的, 另一個(gè)是給其他所有人的. 這個(gè)觀點(diǎn)精辟簡(jiǎn)單. 當(dāng)用戶端代理遇到對(duì)當(dāng)前HTML標(biāo)準(zhǔn)的Doctype聲明良好定義的文檔時(shí)(也就是 HTML2 不會(huì)取消它), 創(chuàng)作者就會(huì)知道她在做什么, 并且用"標(biāo)準(zhǔn)"模式渲染這個(gè)頁(yè)面(用W3C的盒模型元素布局). 但是在沒有Doctype或者定義了不正確Doctype時(shí), 文檔會(huì)被用"Quirks" 模式渲染, 也就是說(shuō), 用windows版的IE5.X的非標(biāo)準(zhǔn)盒模型進(jìn)行元素布局.
這個(gè)概念在兩年后的Mac版的IE上被首次運(yùn)用, 這種方法很快的被其他瀏覽器制.造者采用, 意識(shí)到標(biāo)準(zhǔn)的開發(fā)者會(huì)在他們的文檔中包含正確的Doctype, 這樣做他們的部分在瀏覽器根據(jù)規(guī)范進(jìn)行渲染時(shí)就不需要額外的工作了. 不注意標(biāo)準(zhǔn)的開發(fā)者很幸福的, 他們自己沒有發(fā)現(xiàn), 他們以及他們的工具都沒有為他們插.入正確的Doctype, 但是他們的文檔在瀏覽器中被特殊對(duì)待了.
不幸的是, 因?yàn)閮蓚€(gè)關(guān)鍵問題, 為配合廣大的呼聲,Doctype不可能持續(xù)充當(dāng)標(biāo)準(zhǔn)模式的轉(zhuǎn)換器了:
- A List Apart和Web標(biāo)準(zhǔn)項(xiàng)目的推廣, 善良的編輯器開發(fā)者開始為他們的工具生成的標(biāo)記中插.入有效的,完整的Doctype. IE6的渲染行為有5年沒有更新了, 這讓大部分開發(fā)者認(rèn)為這個(gè)引擎是正確的, 并且不太會(huì)發(fā)生改變了.
這兩種情況破壞了Doctype的轉(zhuǎn)換, 因?yàn)樗兄旅娜毕? 使用有效的Doctype意味著你明白你在通過(guò)web標(biāo)準(zhǔn)做什么, 你希望獲得更正確的渲染, 但是我們?cè)趺粗浪×四? 當(dāng)IE 7降臨的時(shí)候, 網(wǎng)站們變樣了.
當(dāng)然, 就像Roger指出的那樣, 一些被破壞的網(wǎng)站是使用IE6特有的CSS Hack(通常不會(huì)有提供選擇的機(jī)會(huì)). 但是發(fā)生這樣的慘劇是因?yàn)樗麄兊拈_發(fā)者只在IE6當(dāng)中測(cè)試他們的頁(yè)面, 或者他們只關(guān)心在IE6中, 他們的網(wǎng)站是什么樣的. 因?yàn)樗麄優(yōu)槭褂猛活悶g覽器的族群開發(fā)網(wǎng)站(比如說(shuō)公司的內(nèi)部網(wǎng)). 現(xiàn)在當(dāng)然, 你可以只是聳聳肩然后說(shuō), 這是被證明是IE6的錯(cuò), 但是這些開發(fā)者應(yīng)該知道的更多, 但是你會(huì)忽略一個(gè)事實(shí), 就是這些開發(fā)者們從來(lái)沒有明確的選擇 "standards mode", 甚至他們知道有這么個(gè)模式存在.
Chris Wilson, Internet Explorer的平面架構(gòu)師, 經(jīng)常提到的一個(gè)在IE上開發(fā)的核心原則: IE團(tuán)隊(duì)做出的任何選擇的目的絕對(duì)不是 "破壞網(wǎng)頁(yè)". 可悲的是, IE 7卻讓去多人面對(duì)這個(gè)事實(shí). Microsoft不愿意造成第二次錯(cuò)誤, MicroSoft開始進(jìn)入Web標(biāo)準(zhǔn)項(xiàng)目(我是其中成員之一), 以及其他幾個(gè)有標(biāo)準(zhǔn)意識(shí)的開發(fā)者, 向我們尋求幫助去尋找一個(gè)允許開發(fā)者自主選擇支持web標(biāo)準(zhǔn)的好辦法. 最終的目標(biāo)是找到一種可以比Doctype選擇器更直接清楚的方法, 可以運(yùn)用到任何瀏覽器中, 不只是IE. 美好的未來(lái)
在去年召開的SXSW中, 我有幸看到了紐約公共圖書館的Carrie Bickner(同時(shí)是ALA的出版者Jeffrey Zeldman的妻子)領(lǐng)導(dǎo)的神奇的議題. "保存我們的數(shù)字遺產(chǎn)以及我們的個(gè)人收藏", 討論圖書館和個(gè)人在維護(hù)數(shù)字檔案時(shí)遇到的問題. 大部分的問題源自文件格式和應(yīng)用程序的進(jìn)步: 例如 Microsoft Office 2007, 它不能可靠的展現(xiàn)一個(gè)本來(lái)可以展現(xiàn)的word 1.0的文檔. 這個(gè)議題讓我想到了網(wǎng)頁(yè)從建立開始會(huì)有怎樣的改變, 以及它們?cè)趙eb標(biāo)準(zhǔn)進(jìn)步的同時(shí)又會(huì)怎樣的改變.
作為一個(gè)web標(biāo)準(zhǔn)的支持者, 我想看到的是瀏覽器在提供新的支持的時(shí)候不斷的為執(zhí)行標(biāo)準(zhǔn)化而改進(jìn). 同時(shí)我也看到了保護(hù)我們?cè)?jīng)辛辛苦苦建立的基于table布局的網(wǎng)站的重要性. 當(dāng)然, 大部分通過(guò) " Wayback Machine " 存在的錯(cuò)誤因?yàn)镈octype轉(zhuǎn)換器仍然可以很好的為他們服務(wù)而暫時(shí)沒有遭受到打擊, 但是那些讓IE 6執(zhí)行"standards"模式的網(wǎng)站呢? 我也都知道, 在很多案例下, IE 7 也不能完全的渲染它們. 這是不是意味著我們有必要保留一份IE 6的備份在手邊, 為了瀏覽這個(gè)網(wǎng)頁(yè)達(dá)到的效果如同創(chuàng)作者想要的那樣? 這就是很多圖書館為了瀏覽古老的文件所做的事情. 在IE 8的時(shí)代, 我們同樣會(huì)面對(duì)這些潛在的問題, 用IE 7的渲染引擎生成的正常的文檔會(huì)不會(huì)在IE 8中變了形, 怎么來(lái)解決這個(gè)問題呢?
相關(guān)文章
創(chuàng)想WAP網(wǎng)頁(yè)瀏覽器 v2.0 免費(fèi)綠色版
創(chuàng)想WAP網(wǎng)頁(yè)瀏覽器是一款可以瀏覽手機(jī)WAP站點(diǎn)的瀏覽器,綠色軟件體積小,無(wú)需安裝,界面清爽無(wú)廣告2014-02-22iPad Safari網(wǎng)頁(yè)瀏覽器里最近關(guān)閉的標(biāo)簽使用介紹
在你長(zhǎng)按網(wǎng)頁(yè)標(biāo)簽欄右上角“+”時(shí),Safari會(huì)彈出一個(gè)“最近關(guān)閉的標(biāo)簽”窗口,下面為大家介紹下iPad Safari里“最近關(guān)閉的標(biāo)簽”的使用2013-12-10佐手網(wǎng)頁(yè)瀏覽器 v3.82 中文官方安裝版
佐手軟件推出的新型網(wǎng)頁(yè)瀏覽器軟件,ah瀏覽器軟件秉承佐手ah系列軟件新穎實(shí)用簡(jiǎn)便的特點(diǎn)2014-01-22學(xué)生瀏覽器 網(wǎng)頁(yè)瀏覽器 v1.14 官方免費(fèi)安裝版
學(xué)生瀏覽器是深圳學(xué)生網(wǎng)研發(fā)的一款專為中小學(xué)生打造的網(wǎng)頁(yè)瀏覽器,本軟件主要特點(diǎn)是自動(dòng)屏蔽不良信息,便捷進(jìn)入學(xué)生網(wǎng)論壇2013-12-09Dooble Web Browser(網(wǎng)頁(yè)瀏覽器) V1.45 英文免費(fèi)綠色版
dooble是一款安全、穩(wěn)定開源網(wǎng)頁(yè)瀏覽器,主要特色是能保護(hù)用戶的隱私2013-09-26Firefox火狐網(wǎng)頁(yè)瀏覽器如何設(shè)hao123為首頁(yè)
Firefox火狐瀏覽器如何設(shè)hao123為首頁(yè),想必很多的朋友都不會(huì)吧,其實(shí)很簡(jiǎn)單,下面為大家詳細(xì)介紹下具體的設(shè)置步驟,有此需求的朋友可以參考下,希望對(duì)大家有所幫助2013-08-06Offline Explorer enterprise(離線網(wǎng)頁(yè)瀏覽器) v7.1.4451 中文免費(fèi)安裝
Offline Explorer enterprise(離線網(wǎng)頁(yè)瀏覽器)是一款相當(dāng)方便使用的離線瀏覽工具,可排定抓取時(shí)間、設(shè)定Proxy,也可選擇抓取的項(xiàng)目及大小,可自設(shè)下載的存放位置、及存放的2016-02-29網(wǎng)頁(yè)游戲變速器(網(wǎng)頁(yè)瀏覽器加速軟件)V1.7.04.25 官方中文版
網(wǎng)頁(yè)游戲變速器是一款專為網(wǎng)頁(yè)游戲玩家量身打造的網(wǎng)頁(yè)瀏覽器加速器。2013-05-07搜狗瀏覽器 v5.0(0902) 綠色中文免費(fèi)版 新內(nèi)核版網(wǎng)頁(yè)瀏覽器
網(wǎng)頁(yè)更新提醒:當(dāng)用戶所關(guān)注的網(wǎng)頁(yè)發(fā)生變化的時(shí)候,無(wú)需親自去查看或刷新頁(yè)面,由搜狗瀏覽器直接在后臺(tái)智能“感知到”網(wǎng)頁(yè)更新的關(guān)鍵內(nèi)容,并且將“新內(nèi)容”提示或通知給用2014-09-03115瀏覽器(多功能網(wǎng)頁(yè)瀏覽器) v6.0.4.47 綠色免費(fèi)版
115瀏覽器是雨林木風(fēng)自主研發(fā)的一款優(yōu)秀的完全免費(fèi)的多功能網(wǎng)頁(yè)瀏覽器,本產(chǎn)品具有體積小巧、綠色實(shí)用、安全穩(wěn)定、界面簡(jiǎn)約、操作方便等特性,歡迎需要的朋友下載使用2024-07-19