新Web設(shè)計(jì)師時(shí)代 看DIV+CSS創(chuàng)造神話
核心提示:這個(gè)時(shí)代DIV+CSS已經(jīng)創(chuàng)造著新的神話,不久的將來,也許你所訪問的互聯(lián)網(wǎng)將不再出現(xiàn)Table。
作為一個(gè)身處2008年末的Web設(shè)計(jì)師,你是否好意思承認(rèn)自己的代碼中使用了Table,如果是,你是一個(gè)有勇氣的人,Web設(shè)計(jì)是個(gè)奇怪的行業(yè),你可以將自己的網(wǎng)站設(shè)計(jì)得像晚報(bào)的分類廣告,或者樓道里的開鎖廣告,但千萬別讓人知道你使用了Table,在你的源代碼中發(fā)現(xiàn)Table就像一個(gè)銷售被人掀起褲腳發(fā)現(xiàn)穿了白襪子一樣。
Table是如此丑陋,臃腫,哪怕只顯示一段簡(jiǎn)單的內(nèi)容,你也需要<table><tr><td>這三個(gè)基本的標(biāo)簽,每個(gè)標(biāo)簽里面還要加上一堆亂七八糟的屬性,不像<div>,既簡(jiǎn)單,又整潔,又時(shí)尚,它和CSS珠聯(lián)璧合,琴瑟和諧,它們構(gòu)成最完美的Box模型,他們象現(xiàn)實(shí)中的箱子,你把東西放進(jìn)去,然后,很自由地對(duì)他們進(jìn)行排列,厭煩了一種布局,沒關(guān)系,簡(jiǎn)單地改動(dòng)一下CSS定義,一種全新的布局便誕生了;不象Table,Table像食堂里的餐具柜,一排排,一列列,土里土氣,油膩膩的,象我們的父輩,邋遢,什么都往家里拿,胡亂堆在角落里,如果Div是小資,Table就是老三屆,他們不屬于這個(gè)時(shí)代。
也就是近幾年的事,至多不過三五年,W3C是一個(gè)人人都認(rèn)為重要但人人都不喜歡的組織,他們的官方網(wǎng)站十分丑陋,我敢說平生沒見過這么丑陋的網(wǎng)站,但他們的網(wǎng)站是為數(shù)不多的可以通過全部W3C標(biāo)準(zhǔn)驗(yàn)證的網(wǎng)站,這意味著,他們的網(wǎng)站在語法上,在結(jié)構(gòu)上,在可訪問性上是完美的,雖然依舊十分丑陋。不過這是笑談,W3C非常重要,否則微軟會(huì)把全體Web開發(fā)工程師帶到萬劫不復(fù)的境地,還好,Netscape死后,涅磐出Firefox,而Opera在Firefox橫空出世之后雖然沒得到任何好處,至少得到了精神上的支持,看到?jīng)],終于有大哥出來收拾你。喬布斯復(fù)出后,蘋果重返昔日的光芒,這時(shí)人們才知道世界上還有一個(gè)叫做Safari的瀏覽器,所有這一切加在一起,讓W(xué)3C真正有了存在的必要。
W3C說,Table可以用來容納文字,格式文字,圖片,鏈接,表單,以及其它Table。..但是,Table不應(yīng)該單純用來做網(wǎng)頁布局(Tables should not be used purely as a means to layout document content),理由是,當(dāng)Web被非可視化設(shè)備渲染的時(shí)候,Table會(huì)出現(xiàn)問題,他們指定是屏幕閱讀器以及盲文瀏覽器,另外,Table在大型顯示設(shè)備上會(huì)強(qiáng)迫用戶左右滾動(dòng),因此,Web設(shè)計(jì)者應(yīng)該使用CSS而不是Table。參見W3CHTML4.01關(guān)于Table的定義。W3C說這段話的時(shí)候,是1999年12月24日,那時(shí)盡管CSS早已誕生,但并沒有多少人使用,最初的Web像一個(gè)在線版的文檔,并沒有成為現(xiàn)在這樣的平臺(tái),不需要過多過多地考慮布局問題,隨著互聯(lián)網(wǎng)第一次泡沫的形成,涌現(xiàn)出大量的門戶網(wǎng)站,門戶網(wǎng)站是Table布局的始作俑者,因?yàn)樗麄兊氖醉摫纫徽輬?bào)紙的所有版面拼接在一起還復(fù)雜,Table在這方面十分順手,結(jié)合colspan和rolspan,你幾乎能夠?qū)崿F(xiàn)任何復(fù)雜的版面。