前不久聽到這樣一個面試的故事:
面試官:你准備在我們公司做些什麼事情?(大致這個意思)
面試人:我准備在公司做網站重構,把原來是table的頁面全部重構成css+div的,...
面試官:不好意思,我們的網站都是css+div的,不需要重構了。
面試人:...(無語了)
自從2004年阿捷翻譯了《網站重構》這本書,網站重構這個詞就慢慢的必成了css+div,甚至等同起來,一些朋友把標准跟重構也混淆了,css+div跟標准也混淆了。這裡有很多誤讀的成份。
無可厚非《網站重構》當時給我們帶來了一場革命。我看過部分章節,是本好書。可能是css,div,標准這些詞太過於頻繁,很多誤讀的人把網站重構和css+div或者html+css,css+div和標准,標准和重構都等同起來,弄得到底什麼是什麼,誰也說不清楚。這書出版到現在已經5年了,網站重構到底要多久?
我個人認為這本書始終圍繞這一個思想:使用WEB標准重構網站。
21世紀初最大的IT冤案
由於2004年絕大多數網站是使用table布局的,我們知道table布局最大的壞處就是不利於結構和表現分離,後期維護比較麻煩。而使用css和div能很好的解決這個問題。table標簽一直是W3C html的標准標簽之一,為什麼到了我們這裡就拒絕使用了,table標簽被抹殺是21世紀初最大的IT冤案。《網站重構》這本書自始至終沒說不能使用table標簽,為什麼到現在,頁面上出現一個table標簽就說這頁面是垃圾呢?可能跟中國革命的徹底性有關系。
什麼是WEB標准
WEB標准不是某一個標准,而是一系列標准的集合。網頁主要由三部分組成:結構(Structure)、表現(Presentation)和行為(Behavior)。對應的標准也分三方面:結構化標准語言主要包括XHTML和XML,表現標准語言主要包括CSS,行為標准主要包括對象模型(如W3C DOM)、ECMAScript等。這些標准大部分由W3C起草和發布,也有一些是其他標准組織制訂的標准,比如ECMA(European Computer Manufacturers Association)的ECMAScript標准。
具體可以查看:http://baike.baidu.com/view/7913.htm
而在阿捷的網頁設計師網站(相當於《網站重構》的官方網站)有這麼一句話:
怎樣才是符合web標准?簡單說就是不用HTML+table來設計頁面,改用XHTML+CSS來實現。(出自:http://www.w3cn.org/faq/index.html)
可能這句話才是誤讀《網站重構》的真正源頭,抹殺table的真正元凶。但是我相信阿捷他老人家的出發點是鼓勵大家使用XHTML+CSS來布局網頁。
《網站重構》給我們帶來一場革命,同時也給我們帶來了災難性的div+css泛濫
《網站重構》給我們帶來一場革命是譯者預料之中的事情,同時也給我們帶來了災難性的div+css泛濫是譯者始料未及的。現在人們都在談論div+css,談論怎麼解決浏覽器兼容性問題,一個頁面你就使用了div標簽的有之,其實根本不存在div+css,是HTML+CSS。我問一個朋友什麼是em標簽,他說em是單位(css中度量單位),大家css都很精通了,html呢,基礎呢,結構呢,語義呢?反正都是源代碼一看,都是div標簽,就是好頁面。那你們把這個頁面裸奔一下,看看是什麼,用Twinsen Liang 的話去看看小學語文書。
網站重構到底是什麼
網站重構不是一種技術,不是css+div,更不是標准,網站重構是一種思想,是一種理念。
引用WebReBuild.ORG 的話:當前國內的同行普遍的認為:所謂的網站重構就是“DIV+CSS”,想法固然極度局限。但也不是另一部分的人認為是“XHTML+CSS”,因為“XHTML+CSS”只是頁面重構。真正的網站重構理應包含結構、行為、表現三層次的分離以及優化,行內分工優化,以及以技術與數據、人文為主導的交互優化等。
網站重構到底要多久
重構網站先重構人,重構你的理念,不要光光追求技術,追求還原設計稿,追求浏覽器的兼容性,重要的是基礎和理念。當你真正了解什麼是網站重構的時候網站重構也就真正開始了。
純屬個人觀點,歡迎留言斧正。