html - 使用嵌套列表而不是表格在 HTML 中显示数据

标签 html html-table html-lists

我不使用 HTML 表格,而是考虑使用嵌套列表结构来显示类似表格的数据。

例如:

<div class="table">
   <ul class="row">
      <li class="cell col-id"></li>
      <li class="cell col-name"></li>
      <li class="cell col-age"></li>
   </ul>
</div>

我的理由:

  • trs 和 tds 更舒适的样式 block 元素。
  • ul/li 元素在样式选项、使用 JQuery 等方面似乎更灵活。
  • 表格不是很重并且一次渲染吗?

另一方面,我看不出使用 HTML 表格有任何优势。

我在这里离基地很远吗?如果是这样,请解释使用 HTML 表格的好处,因为我似乎不记得了。

最佳答案

对我来说,这与使用表格布局网页没有什么不同。您通过使用 ul 表示表格数据来破坏页面的语义。以下并非详尽无遗的列表,但强调了我坚持使用表格的一些原因:

  1. 如果有人在关闭 CSS 的情况下浏览您的页面,列表将不会保留表格的外观并且难以解释

  2. 屏幕阅读器将无法识别这些表格,从而导致可访问性问题。此外,这并不重要,但如果有人想直接从您的站点解析您的数据,他们将不得不弄清楚您的列表格式。

  3. 您会失去 thead、tfoot 和 tbody 的一些好处。在我脑海中,thead 的一大好处是,如果您打印一个跨多个页面的表格,thead 中的标题将显示在表格行上方的每一页上。

  4. 如果您决定使用 WYSISYG 编辑器,您将无法使用某些表创建向导。

  5. 如果其他人将来必须维护您的网站,他们将必须学习这个新系统的细节来表示表格数据。

这些只是使用表格的几个论点。

如果您决定使用列表解决方案,我只是想祝您好运,并且有兴趣看看它是如何工作的。

关于html - 使用嵌套列表而不是表格在 HTML 中显示数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4774378/

相关文章:

javascript - 从javascript函数插入HTML div标签

javascript - 将 css 类添加到列表内的对象

javascript - 富文本编辑器使用 contenteditable 包裹文本

html - 如何将有序列表项表与数字对齐?

html - 围绕自定义 li 元素符号创建 CSS 边框

html - 选择最后(动态)行的元素?

css - 在表单中动态添加新字段时无法固定表单字段位置

jquery - 在 jQuery 中获取元素

html - 无序列表的li后等间距

css - float 列表问题 : Removing Indentation