Table式的頁(yè)面布局因?yàn)槠浔旧淼暮?jiǎn)便以及有Dreamweaver這樣的可視化操作的Web制作軟件的存在,從而引領(lǐng)了Web制作的一個(gè)時(shí)代,也正
是因此而導(dǎo)致了過(guò)多的Web設(shè)計(jì)人員從來(lái)沒有真正關(guān)注過(guò)HTML標(biāo)簽的真正語(yǔ)義,當(dāng)Web標(biāo)準(zhǔn)開始興起的時(shí)候,于是就直接被理解成是div+css的布局。
于是Web標(biāo)準(zhǔn)中的結(jié)構(gòu)標(biāo)簽幾乎變成了div的秀場(chǎng)。
div標(biāo)簽的過(guò)度使用,已經(jīng)導(dǎo)致了很多人對(duì)于Web標(biāo)準(zhǔn)的誤解,最明顯的一點(diǎn)就是,當(dāng)網(wǎng)頁(yè)切換到使用div標(biāo)簽布局后,table標(biāo)簽便被無(wú)情的拋棄,儼然Web標(biāo)準(zhǔn)已經(jīng)被理解成就是div+css。而事實(shí)上,table標(biāo)簽是不能被拋棄的,當(dāng)需要顯示數(shù)據(jù)內(nèi)容時(shí),由table標(biāo)簽構(gòu)建的HTML結(jié)構(gòu)的優(yōu)勢(shì)要強(qiáng)于div標(biāo)簽構(gòu)建的布局,table標(biāo)簽仍然是顯示數(shù)據(jù)時(shí)最符合HTML語(yǔ)義的標(biāo)簽。
Table頁(yè)面布局所生成的過(guò)多的冗長(zhǎng)代碼,以及混雜其中的HTML樣式屬性,已經(jīng)嚴(yán)重影響到頁(yè)面的性能,尤其是對(duì)于大訪問(wèn)量的網(wǎng)站,解決的方法即是對(duì)頁(yè)面進(jìn)行基于Web標(biāo)準(zhǔn)的重構(gòu)。然而對(duì)Web標(biāo)準(zhǔn)的誤解,造成頁(yè)面整體結(jié)構(gòu)上div被過(guò)多的使用;以及Table布局所遺留下來(lái)的思想,造成頁(yè)面上的結(jié)構(gòu)嵌套過(guò)多。這些仍然影響著頁(yè)面的整體性能。
所以,以更符合語(yǔ)義化的標(biāo)簽來(lái)構(gòu)建頁(yè)面,是Web標(biāo)準(zhǔn)推崇的理念。在這個(gè)理念下構(gòu)建的頁(yè)面還應(yīng)該盡量的精簡(jiǎn)代碼,使頁(yè)面代碼盡量的保持輕簡(jiǎn),讓瀏覽器更快速呈現(xiàn)的同時(shí)也便于日后的代碼維護(hù)。
Web標(biāo)準(zhǔn)并不是某一個(gè)單獨(dú)的標(biāo)準(zhǔn),而是一系列標(biāo)準(zhǔn)的集合,包括結(jié)構(gòu)、表現(xiàn)、行為三部分。這里的結(jié)構(gòu)并不是指div,而是指標(biāo)準(zhǔn)化的語(yǔ)言——
XHTML、XML。
明明<strong />標(biāo)簽可以實(shí)現(xiàn)粗體樣式,為什么還要用<span />標(biāo)簽再搭配粗體樣式去實(shí)現(xiàn)呢?