非常高興地看到許多設計師開始關注和嘗試使用web標準製作網頁。但從網友們的問題和製作中發現幾個問題,在這裡特別提醒一下:
1.不是為了通過校驗才標準化。
web標準的本意是實現內容(結構)和表現分離,就是將樣式剝離出來放在單獨的css檔案中。這樣做的好處是可以分別處理內容和表現,也方便搜尋和內容的再利用。
W3C校驗只是幫助你檢查XHTML程式碼的書寫是否規範,CSS的屬性是否都在CCS2的規範內。程式碼的標準化只是第一步,不是說通過的校驗,我的網頁就標準化了。我們不是為了虛名,或向別人炫耀:「看我的頁面通過了校驗」而去標準化,我們的目的是為了使自己的網頁設計工作更有效率,為了縮小網頁尺寸,為了能夠在任何瀏覽器和網路設備中正常瀏覽。
請大家沉下心來,仔細研究、理解web標準的內涵。網路上已經充滿了不要浮躁和虛榮,請不要將這種風氣帶到web標準應用中來,這樣做只會影響和損害web標準的推廣。
2.不要用傳統的表格思維來套div
「CSS佈局就是將原來用table的地方用div來替代,原來是表格嵌套,現在是DIV嵌套。」這種觀點是錯誤的!
請跳出原來表格佈局的禁錮,拋棄一個td接一個td放置圖片和內容的思維方式。我們上面說過web標準的目的是分離內容和表現,你可以這樣思考,頁面裡有的僅僅是內容,沒有修飾的情況下,它看上去就是一張白白的頁面,上有一些文字和圖片(這張圖片是指內容中的圖片,是有真實意義的圖片)。這些文字圖片只是依序羅列下來,只有結構,沒有任何樣式。然後加入表現,將所有修飾過的圖片當作背景,用C SS來定義每一塊內容的位置、字體、顏色等。
這樣製作的頁面才是內容與表現分離的,就是說,當你抽掉css文件,剩下的就是乾淨的內容。這樣才能在文字瀏覽器中閱讀,才能在手機、PDA中閱讀,才能隨時修改CSS實現改版。
3.不必為每塊內容都建立一個id
有網友抱怨css檔案太大、太複雜。仔細看他們的程式碼,發現原因是他們對每塊內容、甚至每句話定義一個div,建立一個ID。這一方面是對樣式表應用的不熟悉,另一方面也表現出對web標準沒有徹底理解。
我們知道內容都是有結構的(如果不明白,請閱讀:[url=http://www.w3cn.org/article/tips/2004/43. html]理解表現和結構相分離[/ url]),相同的結構的內容我們可以用同一個樣式來定義,例如相同等級的標題、正文、圖片。對於多次引用的樣式可以用class來定義,不需要每個都用id;另外也不是說一定要用
,你完全可以用
來代替,同樣都是區塊級元素,一樣有盒子模型的七個參數,
僅僅方便浮動。
至於僅僅為了行高、間距、一個修飾圖片而增加額外的div,我想隨著對CSS的應用和理解,你很快就可以省略掉這些。我們反對用DIV的巢狀取代table的嵌套,這沒有任何意義,不能體現內容的結構化。希望大家多研究CSS,寫出最簡練,最有效的樣式表。
4.不要因為一點挫折就輕言放棄
我想這是一個態度和處事方法問題,這不僅僅針對學習web標準。學習任何新知識,接受新概念,都有困難,特別是需要你改變原來已有的習慣和思考時。唯一的問題就是:你認為學習web標準是否值得?你可以問問自己:你是否認可web標準帶來的這些好處(簡化程式碼、加速開發、壓縮檔案尺寸、提高下載速度、更好的易用性、獲得更多用戶、更易於維護、多平台相容)?你是否覺得世界通用的XML離你還很遠?你是否認為現在掌握的HTML知識就已經足夠了?
自從99年後,網頁製作技術在國內就沒有怎麼進步和變革過(除了flash的興起),而在國外前進的腳步就一直沒有停止過,xhtml1.0、xhtml1.1、xml、xsl ……,W3C和各大軟體公司都在不斷的研究和推進web技術,使它更方便、更有效、更強大。 web標準的應用和推廣國外已經開展了八年多(以zeldman的web標準組織網站為起點),雖然困難重重,但正在逐步被人們接受和認可。為什麼我們依然陶醉在網站表面的「繁華」上,不去思考頁面背後本質的東西。
你願意中國繼續落後嗎?你願意自己繼續落後嗎?一切決定在於你自己。