【发布时间】:2010-04-21 06:03:22
【问题描述】:
我有大量数据填充 HTML <table>,它有 200 多行和 200 多列。
但是,当我水平或垂直滚动页面以查看数据时,标题列(例如 th)超出了页面。
我如何在表格中滚动时仍然保持顶行和最左边一列固定,以便我始终知道我看到的是什么数据。
【问题讨论】:
标签: html css html-table
我有大量数据填充 HTML <table>,它有 200 多行和 200 多列。
但是,当我水平或垂直滚动页面以查看数据时,标题列(例如 th)超出了页面。
我如何在表格中滚动时仍然保持顶行和最左边一列固定,以便我始终知道我看到的是什么数据。
【问题讨论】:
标签: html css html-table
这是一个很好的解决方案:http://www.imaputz.com/cssStuff/bigFourVersion.html
虽然实现 JavaScript/jQuery 解决方案打开了更多的大门。
有关更多信息,请参阅此 SO 帖子:HTML table with fixed headers?
【讨论】:
您可以使用jQuery,也可以尝试混合以下解决方案:
标头:http://fixed-header-using-jquery.blogspot.com/2009/05/scrollable-table-with-fixed-header-and.html
标题和第一列也是,但仍处于测试阶段: http://fixedheadertable.mmalek.com
仅修复了第一列: http://www.java2s.com/Code/HTMLCSS/Table-Style/Fixedtablefirstcolumn.htm
【讨论】:
如果存在简单的解决方案,请使用它们。 :)
您可以使用 tbody 并为其指定固定高度或最大高度并溢出:auto;:
CSS:
tbody {
max-height: 500px;
max-width: 100%;
overflow: auto;
}
HTML 是这样的:
<table>
<thead>
<tr><th>headers</th></tr>
</thead>
<tbody>
<tr><td>body</td></tr>
</tbody>
<tfoot>
<tr><td>footers</td></tr>
</tfoot>
</table>
【讨论】: