我希望尽可能轻松地完成任何其他库.
在我很长的桌子中,我想在<tbody>标签上添加一个滚动条,以便头部始终可见但不起作用.你能帮忙吗?
小提琴:http://jsfiddle.net/Hpx4L/
<table border="1">
<thead>
<tr>
<th>Month</th>
<th>Savings</th>
</tr>
</thead>
<tfoot>
<tr>
<td>Sum</td>
<td>$180</td>
</tr>
</tfoot>
<tbody style="overflow-y:scroll; height:100px;"> <!-- wont work -->
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
</tbody>
</table>
Run Code Online (Sandbox Code Playgroud)
bra*_*can 65
你可以将<tbody>一个可滚动的内容包装起来<div>:
HTML
....
<tbody>
<tr>
<td colspan="2">
<div class="scrollit">
<table>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
...
Run Code Online (Sandbox Code Playgroud)
CSS
.scrollit {
overflow:scroll;
height:100px;
}
Run Code Online (Sandbox Code Playgroud)
看你的jsfiddle,从你的分叉:http://jsfiddle.net/VTNax/2/
Noa*_*man 14
这些解决方案通常会出现标题列与主体列对齐的问题,并且在调整大小时可能无法正常工作.我知道你不想使用额外的库,但如果你碰巧使用jQuery,那么这个很小.它支持固定页眉,页脚,列跨越(colspan),水平滚动,调整大小以及在滚动开始之前显示的可选行数.
jQuery.scrollTableBody(GitHub)
只要你有一台合适的<thead>,<tbody>和(可选)<tfoot>,所有你需要做的是这样的:
$('table').scrollTableBody();
Run Code Online (Sandbox Code Playgroud)
这是因为您要在表格<tbody>之前添加标签,<td>否则无法打印任何数据<td>.
所以,你必须做出<div>的发言权#header与position: fixed;
header
{
position: fixed;
}
Run Code Online (Sandbox Code Playgroud)
做另一个<div>将充当<tbody>
tbody
{
overflow:scroll;
}
Run Code Online (Sandbox Code Playgroud)
现在您的标题已修复,正文将滚动.标题将保留在那里.