为什么HTML表格不受欢迎?

时间:2011-01-26 15:17:18

标签: html xhtml html-table

是否只是因为有些人认为他们更难阅读?我发现通过绘制网格而不是使用浮动div来向某人解释布局要容易得多。如果他们正在学习编写浮动div,那么他们必须处理设置宽度并使用CSS清除。

(顺便说一下,我自己不使用表格)

6 个答案:

答案 0 :(得分:9)

它们违反了表格的语义。表格应该用于表格数据。他们在标记方面也很重要。此外,它们将您的站点锁定到特定网格的一个结构中。

答案 1 :(得分:3)

表用于存储表格数据。内容不是表格数据。

答案 2 :(得分:2)

这主要是关注点分离的问题 - 您的HTML应该标记您的内容,而不是决定用户界面的外观和布局,这是CSS的关注点。

表格应保留用于表格数据。

答案 3 :(得分:1)

这是从另一个网站获取的,但仍然是相关的:

  
      
  1. 表通常是更多字节的标记。 (更长时间下载,等等   主机的流量字节。)
  2.   
  3. 表通常会阻止增量呈现。 (需要更长时间   供用户查看   页。)
  4.   
  5. 表格可能要求您将单个逻辑图像切割成多个   那些。 (这使得重新设计总计   地狱,也增加了页面加载   时间[更多的http请求和更多   总字节数]。)
  6.   
  7. 表格在某些浏览器上打破文本复制。 (那令人讨厌   用户。)
  8.   
  9. 表会阻止某些布局在其中工作(例如   高度:100%的子元素   )。 (他们限制你的能力   实际上就布局而言。)
  10.   
  11. 一旦你了解CSS,基于表格的布局通常需要更多时间   实行。 (前面有点努力   学习CSS在这方面的回报很大   端。)
  12.   
  13. 表格在布局上是语义上不正确的标记。 (他们   描述演示文稿,而不是   内容。)
  14.   
  15. 桌子让使用屏幕阅读器的人感到生气。 (不仅是你   获得CSS的其他好处,你是   也帮助了   盲/部分近视。这是一个   好事。)
  16.   
  17. 桌子会锁定您当前的设计,并使重新设计更加困难   比语义HTML + CSS。 (你见过吗?   CSS Zen Garden?)
  18.   

SAUCE: http://phrogz.net/css/WhyTablesAreBadForLayout.html

答案 4 :(得分:1)

它主要是炒作。表是一种可接受的方式,通常更逻辑地将视图分成多个部分。然而,CSS更具动态性,如果你使用表格,你经常会遇到它们,特别是因为表格通常位于“数据”之间,而css是在外部定义的。另外,更改css中的“类似表格”布局比更改表格布局更容易。

在互联网上有一些关于这个问题的好资源:

http://www.decloak.com/dev/csstables/css_tables_01.aspx

http://iamelgringo.blogspot.com/2009/02/tables-vs-css-css-trolls-begone.html

正如你所看到的,它通常也是一种语义学的东西。从语义上讲,表格不适用于布局(但它确实很方便,而且这些区别对于纯粹主义者来说更多)。

答案 5 :(得分:0)

并非每个浏览器都以相同的方式显示它们......应仅用于表格数据,而不是内容