我知道有人告诉它使用表格来显示表格数据,但我在许多网站和 CMS 中看到他们使用 div 来显示数据库内容,例如在管理区域来编辑它们,他们不应该使用表格来显示这些数据吗?最好的方法是什么?
8 回答
使用表格,因为它是表格数据。当您想以非表格方式呈现数据时,应使用无序、有序或字典列表,例如 SO 头版上的问题列表。
我会用另一个问题来回答你的问题:
如果 CSS 不可用,您是否希望您的数据保持可展示性?
是的,绝对去表
不,这取决于你,无论哪一个让你内心感到温暖和模糊;-)
这完全取决于我们正在谈论的数据类型。除非你能给出数据的例子,否则你不会得到一个很好的答案。
编辑:根据您的评论,是的,使用表格。如果您要显示数据库中的事物列表,那么您应该使用 LIST。没有黄金法则——您使用的格式应该反映来自数据库的数据。
通常,您会使用 DIV 进行页面布局,使用 TABLE 来显示表格数据。在您的问题中,您询问了 CMS 的管理区域。如果在管理区域中,他们正在显示一个代表数据库中一个或多个表的网格,那么是的,它可能最好显示为一个表。
但是,应根据您实际呈现数据的方式进行区分。仅仅因为数据最初是表格数据(在数据库表中)并不意味着它天生就是表格数据。如果您打算以其他形式显示它,那么 DIV 可能是更好的选择。
表,因为它是数据。
用于呈现数据的最佳标记始终是语义上最合适的标记。当然,这提出了在语义上到底什么是合适的问题。这不是一个微不足道的问题,它完全取决于您提供的数据类型。如果您的数据本质上是表格的,那么您绝对应该将其放入表格中。大多数数据本质上不是表格的,因此不应该放在表格中。
不鼓励使用表格的原因是因为它们在历史上被误用于非语义表示目的。通常,作者会将本质上根本不是表格的数据放在表格标签中,只是为了让它以某种方式出现。这是一种不好的做法,应该改为使用 CSS 创建所需的外观。然而,这种批评一般不适用于表格的使用,而仅适用于将表格用于不适当的内容。
要解决其他一些问题:
- 不要担心没有 CSS 的浏览器。除非您使用非图形浏览器,否则在当今时代这不是问题。
- 搜索引擎更喜欢语义内容。如果表格是正确的语义,那么搜索引擎会更喜欢它们。
浏览器更广泛地支持 Div,而 table 有一些怪癖和例外,使其变得繁琐。一个 div 更通用,你可以用它做很多事情,而不仅仅是表格。仔细看看:
搜索引擎更像 div