我应该使用HTML表格布局还是新的CSS显示:table-cell code?

时间:2011-05-24 19:14:19

标签: html css css3 css-tables

我已经使用了表但从未使用过CSS的做事方式。现在我有一个包含3行和2列的数据表。有人可以解释我如何用CSS DIV做到这一点,最重要的是我想知道CSS是否是这样做的方式和有什么限制。

6 个答案:

答案 0 :(得分:5)

谨防display: table-cell。它不适用于反浏览器(不得说出其名称的“浏览器”)。

此外,如果您有表数据,请使用表格。当它们在语义上有意义时使用其他标记(例如<p>用于段落,<ol>用于有序列表等等),或<div>用于布局。

答案 1 :(得分:4)

如果它是一个数据表,那么最好的(也是最具语义性的)选择就是坚持使用一个好的<table>


display: table-cell的支持很好,请参阅:http://caniuse.com/#search=table

它适用于所有现代浏览器和IE8 +。

它不适用于IE7,这是某些人的限制因素。

答案 2 :(得分:3)

除了语义之外,表格数据表的使用也为Screen Reader软件提供了更好的支持。如果您不编写可以被屏幕阅读器轻松阅读的代码,那么您将有效地阻止残疾人使用。

只是为了好玩,试试你的CSS方法。获取Firefox的网站管理员工具栏插件的副本,并使用它来切换CSS。现在,这值得吗?想象一下,一个屏幕阅读器试图弄清楚那个烂摊子的头部或尾部......

答案 3 :(得分:1)

2件事:

显示:table-cell不是新的,它在CSS 2中

display:table-cell不应该用于tr元素以外的任何内容,除非你喜欢追踪特定于浏览器的不一致和错误

  

我有一张数据表

您正在处理表格数据 - 使用表格执行此操作没有任何问题。事实上,这将是标记所述数据的最佳实践和语义方式

答案 4 :(得分:0)

使用表格显示表格数据。

但是,对于不与表格数据有关的任何其他类型的布局,你应该使用div。

答案 5 :(得分:0)

这实际上取决于你想要做什么,如果它只是网页的设计然后使用浮动div,如果它是表格数据然后肯定使用表格,那就是它们的构建。