七彩课堂[网页设计CSS教程系列]
Div拥护者对Table的责难
         Table 的一切不公平待遇就此开始。为什么说不公平,W3C 不建议 Table 布局的时候,只说应使用 CSS 代替,这是什么意思,Table 不支持 CSS 吗?当然支持,而且,由于 Table 作为老牌的 HTML 对象,它的地位曾如此重要,任何浏览器都对 Table 提供了最完美的支持,包括 CSS 支持。当人们拥抱 Div 的时候,似乎忘记了 Table 也是 Box,而且是一个拥有多个内格的 Box,Table 作为一个整体,和 Div 在 Box 模型方面没有任何区别,而它的内格,除了 Margin 之外,仍然是一个 Box,内格不含 Margin 概念这是应该理解的。Div 很优秀这不必说,然而当人们说 Div + CSS 的时候,似乎暗示着 Table 无法 CSS,这是天大的误会。
   Div 支持的所有 CSS 属性,Table 全部支持,事实上,在 Div 大红大紫之前,那些 Div 的早期采用者曾信心不足地表示,Table 能做到,Div 都能,而他们也为自己的话付出了代价,企图在 Div 中实现垂直居中的人明白我的意思,企图在 IE6 中不经 CSS Hack 而实现 100% Div 布局的人更明白我的意思。100% Height 问题,几个 Div 之间的宽度自适应问题,相信任何从事 Div + CSS 设计的人会遇到。Table 在这方面的优势并不是因为它本身多么优秀,而是因为它老牌,没有浏览器敢忽视,也因为它的特性原本如此,人们发明表格,是因为希望数据显示得整齐,就这么简单。然而,为什么Table背上那么多的恶名?Div拥护者对Table的责难不外乎以下几条。
   代码臃肿:你至少需要写下 <table><tr><td>这三个标签之后,才能开始真正的内容,另外,Table 的各种标签中还包含了复杂的属性定义,而 Div 只需 <div>一个标签。
页面渲染性能问题:浏览器需要将整个表格完全读完后才会开始渲染。
不利于搜索引擎优化:搜索引擎喜欢内容与修饰分开。
可访问性差:屏幕朗读软件和盲文浏览器无法很好地理解 Table 中的内容。
不够语义(Semantic):我们需要语义的 Web。
   第1条:代码臃肿
   首先,Table 里面唯一无法用 CSS 定义的属性只有 Cellspacing, Cellpadding 几个,其它属性都可以并且应当使用 CSS,这样,剩下的,就是 <table><tr><td> 和 <div> 的对决,我相信一个动辄几十K大小的网页,即使使用了几十个 Table,因此多出来的代码也可以忽略不计,那些埋怨 Table 代码臃肿的人其实该检查自己的编码习惯,能将 Table 写得十分臃肿的人,写 Div 相比也未必会简洁到哪里。
   第2条:页面渲染性能问题
   我使用一台2004年的笔记本电脑,1.6G 的 CPU 与 1G 内存,这种配置下,看不出 Table 布局和 Div 布局在页面渲染上有任何速度差别,其实这点差别即使有,相对网络本身的延迟也可以忽略。
   第3条:不利于搜索引擎优化
   如果你尽可能使用 CSS 而不是 Table 的属性,前面说了,产生的代码和 Div 的差别也不会很大,搜索引擎会歧视 <table> 标签吗,这种说法的依据我至今并没有找到。
   第4条:可访问性差
   这是 Table 固有的缺陷,不过多数 Div + CSS 的拥趸似乎并不是基于这个原因才排斥 Table。
   第5条:不够语义
   语义 Web 的含义要深远得多,并不是仅仅在 Table 和 Div 上纠缠,即使 W3C,也并没有规定 Table 只能用来显示表格数据,很多在 Table 的语义上进行纠缠的人,其实不妨再等等 HTML 5,那才是真正的语义。
   本文的目的不是让你丢弃 Div 投身 Table,相反,如果 Div 能满足你的设计需要,Div 仍是首选,但没必要避讳 Table,否则会走入另外一个极端。很多使用 Div 无法简单实现的设计,仍可以使用 Table,当然,不管使用什么,都应该用 CSS 将内容与修饰分离。Div + CSS 和 Table + CSS 都是合法的设计,谁更简单就用谁。根据我的经验,当你能预见你的内容的格式,对你即将加入的内容有能力完全控制其显示格式时,应当使用 Div + CSS;当你即将加入的内容是不固定的,你无法预见其格式,如果不想让页面坍塌,使用 Table + CSS 是一种保险的做法。
信息推荐
资讯中心 | 电子商务 | 搜索营销 | 设计学院 | 中医养生 | 养生保健 | 节日祝福 | 民俗文化 | 奇闻趣事
建站知识 | 人世百态 | 网站导航 | 传统节日 | 搜索热点 | 星座运势 | 趣闻轶事 | 祝福的话 | 短信大全
© 2023 QicaiSpace.Com