引言:
一群會用table蹩腳布局的網頁初學者嘲笑著那些對網頁制作一竅不通的門外漢;而一群自認為 table布局無所不能的table布局擁護者則嘲笑著那群用table蹩腳布局的網頁初學者;那些剛試著將幾個頁面中的table換成div的所謂的 web標准設計者則嘲笑這那群死抱table布局不放的table布局設計者;而一群焦頭爛額終於在網站上貼上“W3C驗證通過Html網站”圖標的自認高高人的web標准設計者則嘲笑這那群以為“DIV+CSS”就是web標准的web標准設計初學者;但是當我們把我們的網頁放在不同的浏覽器中的時候,卻發現我們全部都被“Web標准設計”嘲笑了……
正文:
標准:衡量事物的准則。例句:惟極貧無依,則械系不稍寬,為標准以警其余。——清•方苞《獄中雜記》
Standard: An acknowledged measure of comparison for quantitative or qualitative value; a criterion.
無論是中外古今的對於標准一詞的解釋都很相近。即:標准是一個准則。那麼冠以“標准”前綴的詞,則必須符合此准則。如:
標准大氣壓(standard atmospheric pressure):指在緯度為45°的海平面上,溫度為0°C時的大氣壓,相當於76厘米高的水銀柱所產生的壓強。
標准照(official portrait):指人的正面半身免冠相片。
那麼冠以“標准”前綴的web標准設計,也必須有一個衡量的准則方可。但是我們發現所謂的衡量web標准是否標准的准則並不存在,至少目前還沒有成型。沒有衡量准則,標准何以言之為標准?
推薦遵循標准不是嚴格意義上的標准
當你試圖在網上查找“什麼是web標准”時,找到的多數是將web標准進入中國的先驅阿捷的文章《什麼是web標准》。雖然裡面提到了各個組成部分的“推薦”遵循標准,但是那些也都只是W3C組織“推薦遵循”的標准。大家都知道W3C標准不是強制性標准,所以像微軟這樣喜歡“賣標准”的一流公司並不完全買W3C的帳。所以那些所謂的“推薦標准”從嚴格意義上來說並不是全面的、嚴格意義上的認證標准。
注:雖然W3C的推薦標准不是嚴格意義上的標准,但是我們絕對不可以無視。因為它們的確很有指導意義。而且我們非常欣慰的看到:雖然IE7為了向前兼容,保留了一些IE6的詭異解析方式,但是它也正在逐漸的遵循這些標准。所以這些標准現在是“推薦遵循標准”,但是在不久的將來極有可能成為真正的標准准則,那個時候就是“web標准大統一”的黃金年代。所以還沒有看過下面這些文章的朋友要抓緊時間啦。
W3C推薦遵循web標准文檔列表:
XML方面:《Extensible Markup Language (XML) 1.0 (Second Edition)》
XHTML方面:《XHtml 1_0 The Extensible HyperText Markup Language (Second Edition)》
DOM方面:《W3C DOM規范》
CSS方面:《Cascading Style Sheets, level 2 CSS2 Specification ver.12-May-1998》
Script方面:《ECMAScriptLanguage Specification》
web標准與否不能被有效驗證
即使我們暫且將那些“推薦遵循標准”視為標准,我們仍然有很多問題。例如:怎麼檢驗我們的頁面就是符合那些“推薦遵循標准”的呢?的確,我們有驗證工具,但是那些驗證工具的驗證結果就是正確的嗎?web標准一個重要的部分就是,根據標簽的語義來使用它們。例如table是用來呈現表格數據的,而不是用來分割文檔的(也就是平時說的布局)。但是一些利用table布局的頁面也能順利的通過驗證工具的驗證。所以那些驗證工具的驗證結果也只能作為一種參考。
語義是道多選題
說道標簽的語義,這也會帶出一些問題。因為當我們決定使用哪種標簽的時候,我們會發現我們面對的是多選題,而不是單選題。因為某些情況利用多種標簽時都是符合語義的。我們舉個最簡單的例子:
你說“Name:”應該用什麼標簽包起來?label?span?其實無論使用哪個都是符合各自的語義的。正是這種“多選題”讓web標准顯得有些朦胧。