同是一個功能但DIV顯示只需個標簽,而table就要三個標簽,DIV整潔時尚,搜索引擎也喜歡,所以很多Web設計師都愿用它,但是DIV不能完全替代表格。
DIV與table的區別
可訪問性差:屏幕朗讀軟件和盲文瀏覽器無法很好地理解 Table 中的內容。
不夠語義(Semantic):我們需要語義的 Web。
第1條:代碼臃腫
首先,Table 里面唯一無法用 CSS 定義的屬性只有 Cellspacing, Cellpadding 幾個,其它屬性都可以并且應當使用 CSS,這樣,剩下的,就是和的對決,我相信一個動輒幾十K大小的網頁,即使使用了幾十個 Table,因此多出來的代碼也可以忽略不計,那些埋怨 Table 代碼臃腫的人其實該檢查自己的編碼習慣,能將 Table 寫得十分臃腫的人,寫 Div 相比也未必會簡潔到哪里。
第2條:頁面渲染性能問題
我使用一臺2004年的筆記本電腦,1.6G 的 CPU 與 1G 內存,這種配置下,看不出 Table 布局和 Div 布局在頁面渲染上有任何速度差別,其實這點差別即使有,相對網絡本身的延遲也可以忽略。
第3條:不利于搜索引擎優化
如果你盡可能使用 CSS 而不是 Table 的屬性,前面說了,產生的代碼和 Div 的差別也不會很大,搜索引擎會歧視標簽嗎,這種說法的依據我至今并沒有找到。
第4條:可訪問性差
這是 Table 固有的缺陷,不過多數 Div + CSS 的擁躉似乎并不是基于這個原因才排斥 Table。
第5條:不夠語義
語義 Web 的含義要深遠得多,并不是僅僅在 Table 和 Div 上糾纏,即使 W3C,也并沒有規定 Table 只能用來顯示表格數據,很多在 Table 的語義上進行糾纏的人,其實不妨再等等 HTML 5,那才是真正的語義。