您如何使用div设计HTML表格?

时间:2009-08-20 04:39:00

标签: html html-table

我在SO中看到过许多与HTML表相关的问题。通常会询问有关浏览器特定错误(如CSS和JavaScript)的许多问题。早期版本的DataTable YUI标记如下所示:

// dynamically generated
<table>
    <tr>
        <td>Some content</td>
        <td>Other content</td>
    </tr>
</table>

现在的版本现在看起来像

// dynamically generated
<table>
    <tr>
        <td><div>Some content</div></td>
        <td><div>Other content</div></td>
    </tr>
</table>

请注意在列中插入div。

&LT; DIV&GT;优势包括

  • 跨浏览器的稳定行为和事件支持
  • JavaScript框架支持
  • 默认显示块
  • 易于在HTML页面中创建和插入

您可以将HTML表格元素视为如下

<div class="collection">
    <div class="row">
        <div>Some content</div>
        <div>Other content</div>
    </div>
</div>

我需要它,因为我使用div设计了一个自定义的“像表”组件。我的自定义“像表”组件的目的是显示表格数据。跨越许多浏览器的稳定行为和事件支持(单行和双击一行和一行)是我考虑过的一个特性。请注意,例如,ExtJS使用div使用自定义的“like a select”组件,并且您知道许多与HTML select相关的错误。

那么您如何看待使用div设计HTML表格?

3 个答案:

答案 0 :(得分:1)

我认为这实际上取决于你为什么需要div而不是表格。

如果您只想显示表格数据,例如Excel电子表格,那么您可以将其设为交互式并仍然使用表格。

但是,如果你正在做一些外观可能改变的事情,或者表格可能在另一个对象周围,那么要有创意并做你的html表。

听起来你并没有把事情做好,但愿意走出那个盒子,写出一个能够最好地解决问题的解决方案。

但是,一旦你走这条路线,你将需要对你支持的任何浏览器进行大量测试,以确保表格按预期显示,因为表格是表格,我们知道会发生什么,css和javascript只需要更多的测试

答案 1 :(得分:0)

如果考虑语义,则始终考虑Div。

表格易于设计,无需太多CSS即可快速管理。

答案 2 :(得分:0)

如果您正在做的只是重新创建它,我认为这非常荒谬。虽然它有合法的用途。表有用途,div有用,对它的无聊论证只是浪费时间。

- 编辑:

另见Why not use tables for layout in HTML?