我如何使我的CSS滚动固定到表头和第一列(我也开放使用JS或JQuery的想法)
How do I make my CSS scrolling fixed to table header and the first column (I'm also open to the idea using JS or JQuery)
我正在努力保持左列,我的项目名称是从滚动时从我的矩阵表左右移动。我还希望在滚动条上下移动时保持顶部标题表不滚动。我能在CSS中做到这一点吗?我正在使用bootstrap。如果有必要,我可以用JavaScript或JQuery来做。我试着改变我的代码有一个固定的头,但它看起来都乱了。
我的代码在小提琴
div.scroll {
width: 99%;
height: 100px;
overflow: scroll;
}
<h1><strong>Inventories</strong></h1>
<div class="scroll">
<table class="table table-striped" style="width:1500px">
<thead>
<tr>
<th></th>
<th style="text-align: center">Atlanta</th>
<th style="text-align: center">Detroit</th>
<th style="text-align: center">Orlando</th>
<th style="text-align: center">Rochester</th>
<th style="text-align: center">Bellevue </th>
<th style="text-align: center">Madison </th>
<th style="text-align: center">Santa Barbara </th>
<th style="text-align: center">Bismarck </th>
<th style="text-align: center">Ann Arbor</th>
<th style="text-align: center">Sioux Falls</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: center ">Apple MacBook Air</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">2</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">2</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">2</td>
<td style="text-align: center ">4</td>
</tr>
<tr>
<td style="text-align: center ">Asus Zenbook</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">5</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">5</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">5</td>
<td style="text-align: center ">4</td>
</tr>
<tr>
<td style="text-align: center ">Dell XPS</td>
<td style="text-align: center ">7</td>
<td style="text-align: center ">5</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">7</td>
<td style="text-align: center ">5</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">7</td>
<td style="text-align: center ">5</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">4</td>
</tr>
<td style="text-align: center ">Acer Travelmate P645.</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">2</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">2</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">2</td>
<td style="text-align: center ">4</td>
</tr>
<tr>
<td style="text-align: center ">Sony Vaio Pro 13 Touch</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">5</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">5</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">5</td>
<td style="text-align: center ">4</td>
</tr>
<tr>
<td style="text-align: center ">Samsung ATIV Book 9 Plus 13-inch (2015)</td>
<td style="text-align: center ">7</td>
<td style="text-align: center ">5</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">7</td>
<td style="text-align: center ">5</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">7</td>
<td style="text-align: center ">5</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">4</td>
</tr>
<td style="text-align: center ">HP Spectre X360.</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">2</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">2</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">2</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">4</td>
</tr>
<tr>
<td style="text-align: center ">MacBook</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">5</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">2</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">2</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">4</td>
</tr>
<tr>
<td style="text-align: center "> UX305</td>
<td style="text-align: center ">7</td>
<td style="text-align: center ">5</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">2</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">2</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">3</td>
</tr>
<tr>
<td style="text-align: center ">Lenovo ThinkPad T450s (Business Laptop)</td>
<td style="text-align: center ">7</td>
<td style="text-align: center ">5</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">2</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">3</td>
<td style="text-align: center ">2</td>
<td style="text-align: center ">4</td>
<td style="text-align: center ">4</td>
</tr>
</tbody>
</table>
</div>
两天前我也遇到过同样的问题。我做这件事的方法是把两个桌子一个放在另一个下面。上面的表格是标题,下面的表格是表格主体。因此,"header"表将放置在位置上,第二个表将需要overflow:auto
。此外,你应该从第二个表中删除滚动条,让它保持它的宽度。
这个实现的缺点是你应该为你的两个表的所有列定义宽度,使它们适合彼此。
顺便说一下,您可以在css中为th
和td
定义text-align: center
。
如果你需要更多的帮助,请告诉我。
相关文章:
- jQuery Datatables:单击一列时对另一列进行排序
- jquery插件 - 已选择 - 多项选择不在一行中列出,而是列在一列中
- 如何在jQuery数组中保存行的每一列的内容
- jQuery 为每行的下一列添加附加值
- 隐藏 3 列并将其中一列扩展为 100% 行时的 jQuery 过渡效果
- 在下拉 jQuery 菜单中将鼠标悬停在一列上时,如何只选择一列
- jQuery DataTables 1.10:它现在在哪一列上排序
- 如何使用 jquery 删除 HTML 表中的最后一列
- 查找一个较小的值,并使用onchange jquery将其复制到另一列
- 在JQGrid中的一列中添加一个超链接,单击“超链接”将调用Jquery函数
- 使用Jquery Tablesorter,了解如何使其中一列成为加载页面时进行排序的默认列
- 在jQuery中一次将元素从一列移动到另外两列
- JQuery数据表排序前一列
- JQuery,它将循环表's列的每一行,并从另一列中检索其对应的复选框的值
- JQuery Tablesorter:当另一列排序时显示
- 使用jQuery根据另一列的文本对列总数求和
- 在jQuery中将一列的内容复制到另一列
- 使用jquery和表排序器只排序一列
- 通过jQuery获取引导行中的最后一列
- 如何使用 Jquery 修改表中最后一列中的每个单元格