
普通的一個(gè)頁(yè)面無(wú)非就是HTML以及CSS和JS等腳本組成,相對(duì)以前來(lái)說(shuō),大家都是用表格(table)來(lái)實(shí)現(xiàn)頁(yè)面的布局,而現(xiàn)在呢,追求的是用層(div)來(lái)布局了。很多朋友說(shuō)用層(div)布局跟用表格(table)布局的差別很大,這個(gè)我同意,因?yàn)楸砀瘢╰able)是用來(lái)體現(xiàn)二維數(shù)據(jù)的。但是既然我們以前能用,而且一直在用,也就說(shuō)明表格(table)布局還是可以的。但是為什么我們現(xiàn)在要用用層(div)來(lái)布局呢?因?yàn)槲覀円孒TML的每個(gè)標(biāo)簽都能在語(yǔ)義上很好的體現(xiàn)出來(lái),即使看源代碼也能很明了它的作用。
想想以前,什么CSS樣式、什么HTML代碼都不管,只要能在FrontPage或者DreamWeaver上制作出頁(yè)面上要體現(xiàn)的效果就可以了。而現(xiàn)在呢,大家放棄了FrontPage,為什么?因?yàn)镕rontPage會(huì)產(chǎn)生很多無(wú)用的代碼,影響代碼的可讀性。既然注意到了這點(diǎn),那么現(xiàn)在的重構(gòu),標(biāo)準(zhǔn),是為了什么呢,還不是為了在代碼上的一個(gè)可讀性嗎?
都說(shuō)重構(gòu)后的站是要把表現(xiàn)和結(jié)構(gòu)分離,那把所有表現(xiàn)跟結(jié)構(gòu)都分離就完事了嗎?不!我們還要把表現(xiàn)的內(nèi)容利用,而且是反復(fù)利用,不是用過(guò)一次就不要了。如果把要表現(xiàn)的內(nèi)容當(dāng)做一次性筷子用過(guò)一次后就不要了,那重構(gòu)你的站點(diǎn)似乎意義不大,反而讓你的樣式文件變多變大。要把表現(xiàn)的內(nèi)容反復(fù)利用起來(lái),在結(jié)構(gòu)上要做的事情也將影響到樣式的調(diào)用,而且如果能將每個(gè)結(jié)構(gòu)的語(yǔ)義用很貼切的標(biāo)簽來(lái)體現(xiàn),那對(duì)源代碼的可讀性也是一個(gè)很大的提升。
曾經(jīng)看過(guò)一位朋友重構(gòu)后的站點(diǎn),他是一個(gè)<div></div>將頁(yè)面所有的內(nèi)容都包含在里面,當(dāng)時(shí)我就在想,這樣做有什么意義呢?是不是跟當(dāng)初的用一個(gè)<table></table>將頁(yè)面的所有內(nèi)容包含在里面一樣呢?這樣做并不是說(shuō)不可以,也并沒(méi)有錯(cuò),只是我們?cè)诮Y(jié)構(gòu)上并不需要這樣做,不是嗎?一般最常見(jiàn)的是上(頭部)中(內(nèi)容)下(版權(quán)信息)三個(gè)部分,相對(duì)這樣的,我們可以用三個(gè)<div></div>來(lái)實(shí)現(xiàn)。
<div id=”pageTop”></div>
<div id=”pageContent”></div>
<div id=”pageBottom”></div>
相對(duì)這樣來(lái)說(shuō),總比<div></div>一個(gè)大大的框來(lái)約束內(nèi)容來(lái)得強(qiáng)。
最后要說(shuō)一下的就是,現(xiàn)在瀏覽器不統(tǒng)一,支持的內(nèi)容不同,雖然我們可以用hack的方法來(lái)實(shí)現(xiàn)我們要的東西,不過(guò)我們?yōu)槭裁床簧宰鳇c(diǎn)犧牲呢。如果對(duì)版面的影響不大的話(huà),是否可以放棄使用hack的方法呢?難道你的客戶(hù)會(huì)去用不同的瀏覽器看看效果做對(duì)比嗎?hack用得多了,只會(huì)對(duì)后期的修改上帶來(lái)麻煩。
您發(fā)布的評(píng)論即表示同意遵守以下條款:
一、不得利用本站危害國(guó)家安全、泄露國(guó)家秘密,不得侵犯國(guó)家、社會(huì)、集體和公民的合法權(quán)益;
二、不得發(fā)布國(guó)家法律、法規(guī)明令禁止的內(nèi)容;互相尊重,對(duì)自己在本站的言論和行為負(fù)責(zé);
三、本站對(duì)您所發(fā)布內(nèi)容擁有處置權(quán)。