修复表格标题
Fix table header
我有一个有很多行和列的表。垂直滚动时,表格标题需要固定在浏览器窗口上。我已经通过在表头到达浏览器窗口顶部时向其添加样式position: fixed;
来做到这一点。
但是,当我水平滚动时,表格标题不会像我应用固定位置那样滚动。
如何使表格标题水平滚动(也)。
Javascript:
$(window).scroll(function () {
var spec_lot_dash_sticky = $('.spec_dash_thead'),
spec_lot_dash_scroll = $(window).scrollTop();
if (spec_lot_dash_scroll >= ($("#table_id").offset().top)) {
spec_lot_dash_sticky.addClass('fixed')
$(".fixed").css("top", spec_lot_dash_thead_scroll_top)
} else {
spec_lot_dash_sticky.removeClass('fixed');
}
});
jsfiddle链接首先滚动垂直条,然后水平滚动高滚动条。表格标题未滚动。
您还可以根据表格位置在滚动时设置其水平位置:
spec_lot_dash_sticky.css('left', $("#filter_table").offset().left - $(window).scrollLeft());
这是一把小提琴。
您不需要任何jQuery
来实现您所描述的表。
只需使用CSS
:就可以再现固定的<thead>
和垂直滚动的<tbody>
.fixed{position:fixed}
#filter_table thead, #filter_table tbody {
display: block;
position: relative;
}
#filter_table th, #filter_table td {
width: 120px;
text-align: center;
}
#filter_table tbody {
height: 200px;
overflow: auto;
}
<table id="filter_table" style="margin-top:5%">
<thead class="spec_dash_thead" style="background-color:blue">
<tr>
<th>header1</th>
<th>header2</th>
<th>header3</th>
<th>header4</th>
<th>header5</th>
<th>header6</th>
</tr>
</thead>
<tbody>
<tr>
<td>data1</td>
<td>data2</td>
<td>data3</td>
<td>data4</td>
<td>data5</td>
<td>data6</td>
</tr>
<tr>
<td>data1</td>
<td>data2</td>
<td>data3</td>
<td>data4</td>
<td>data5</td>
<td>data6</td>
</tr>
<tr>
<td>data1</td>
<td>data2</td>
<td>data3</td>
<td>data4</td>
<td>data5</td>
<td>data6</td>
</tr>
<tr>
<td>data1</td>
<td>data2</td>
<td>data3</td>
<td>data4</td>
<td>data5</td>
<td>data6</td>
</tr> <tr>
<td>data1</td>
<td>data2</td>
<td>data3</td>
<td>data4</td>
<td>data5</td>
<td>data6</td>
</tr> <tr>
<td>data1</td>
<td>data2</td>
<td>data3</td>
<td>data4</td>
<td>data5</td>
<td>data6</td>
</tr> <tr>
<td>data1</td>
<td>data2</td>
<td>data3</td>
<td>data4</td>
<td>data5</td>
<td>data6</td>
</tr> <tr>
<td>data1</td>
<td>data2</td>
<td>data3</td>
<td>data4</td>
<td>data5</td>
<td>data6</td>
</tr>
<tr>
<td>data1</td>
<td>data2</td>
<td>data3</td>
<td>data4</td>
<td>data5</td>
<td>data6</td>
</tr> <tr>
<td>data1</td>
<td>data2</td>
<td>data3</td>
<td>data4</td>
<td>data5</td>
<td>data6</td>
</tr> <tr>
<td>data1</td>
<td>data2</td>
<td>data3</td>
<td>data4</td>
<td>data5</td>
<td>data6</td>
</tr>
<tr>
<td>data1</td>
<td>data2</td>
<td>data3</td>
<td>data4</td>
<td>data5</td>
<td>data6</td>
</tr>
<tr>
<td>data1</td>
<td>data2</td>
<td>data3</td>
<td>data4</td>
<td>data5</td>
<td>data6</td>
</tr>
<tr>
<td>data1</td>
<td>data2</td>
<td>data3</td>
<td>data4</td>
<td>data5</td>
<td>data6</td>
</tr>
<tr>
<td>data1</td>
<td>data2</td>
<td>data3</td>
<td>data4</td>
<td>data5</td>
<td>data6</td>
</tr>
<tr>
<td>data1</td>
<td>data2</td>
<td>data3</td>
<td>data4</td>
<td>data5</td>
<td>data6</td>
</tr>
<tr>
<td>data1</td>
<td>data2</td>
<td>data3</td>
<td>data4</td>
<td>data5</td>
<td>data6</td>
</tr>
</tbody>
</table>
相关文章:
- HTML/JavaScript表格标题
- 我们如何在谷歌浏览器的每个页面上打印表格标题
- 表格标题和正文间距独立
- 未对齐的边框/宽度固定了表格标题和表格
- 具有固定标题以及水平和垂直滚动的表格,不给 td 或 th 提供宽度
- 如果我们在表格标题中有可编辑的文本,选项卡功能将无法正常工作
- 单击按钮以编辑表格标题
- 创建具有未知标题的表格,具有角度.js
- 如何使用 JavaScript 倾斜表格标题上的文本
- 通过单击任何单元格或表格数据及其左侧和顶部标题进行查找
- 在谷歌图表中更改表格标题背景颜色
- 根据垂直和水平标题突出显示表格单元格
- 如何提交手风琴标题表格.
- 样式标题工具提示在表格中不起作用
- 固定的表格标题更改位置/不在镀铬中对齐
- 如何将我网站上的所有表格标题定义为JavaScript中的锚点
- 如何用水平滚动固定表格标题
- 突出显示带有标题的表格单元格
- pdf使表格标题在分页符上不重复
- 修复表格标题