我想让我的表头固定。表存在于可滚动的 div 中。请在这里查看我的代码:http://jsfiddle.net/w7Mm8/114/请建议我解决这个问题。
谢谢
My Code:<div style="position: absolute; height: 200px; overflow: auto; ">
<div style="height: 250px;">
<table border="1">
<th>head1</th>
<th>head2</th>
<th>head3</th>
<th>head4</th>
<tr>
<td>row 1, cell 1</td>
<td>row 1, cell 2</td>
<td>row 1, cell 2</td>
<td>row 1, cell 2</td>
</tr>
<tr>
<td>row 2, cell 1</td>
<td>row 2, cell 2</td>
<td>row 1, cell 2</td>
<td>row 1, cell 2</td>
</tr>
</table>
</div>
</div>

您想要做的是将表的内容与表的标题分开。您只希望滚动<th>
元素。您可以使用<tbody>
和<thead>
元素轻松地在 HTML 中定义这种分离。
现在表头和表体仍然彼此连接,它们仍然可以具有相同的宽度
table tbody, table thead
{
display: block;
}
现在,您可以将滚动设置为表的主体:
table tbody
{
overflow: auto;
height: 100px;
}
最后,因为<thead>
不再与主体共享相同的宽度,您应该为表的标题设置静态宽度:
th
{
width: 72px;
}
您还应该为<td>
设置静态宽度。这解决了未对齐列的问题。
td
{
width: 72px;
}
<tr>
<th>head1</th>
<th>head2</th>
<th>head3</th>
<th>head4</th>
</tr>
我希望这就是你的意思。
jsFiddle Addendum如果您希望对列宽度有更多的控制,让它们在宽度上彼此不同,并且当然保持标题和正文列对齐,则可以使用以下示例:
table th:nth-child(1), td:nth-child(1) { min-width: 50px; max-width: 50px; }
table th:nth-child(2), td:nth-child(2) { min-width: 100px; max-width: 100px; }
table th:nth-child(3), td:nth-child(3) { min-width: 150px; max-width: 150px; }
table th:nth-child(4), td:nth-child(4) { min-width: 200px; max-width: 200px; }
我能想到一个厚脸皮的方式来做到这一点,我不认为这将是最好的选择,但它会工作。
将标题创建为单独的表,然后将另一个放在 div 中并设置最大大小,然后使用overflow
允许滚动进入。
table {
width: 500px;
}
.scroll {
max-height: 60px;
overflow: auto;
}
<table border="1">
<tr>
<th>head1</th>
<th>head2</th>
<th>head3</th>
<th>head4</th>
</tr>
</table>
<div cl="scroll">
<table>
<tr><td>Text Text</td><td>Text Text</td><td>Text Text</td><td>Text Text</td></tr>
<tr><td>Text Text</td><td>Text Text</td><td>Text Text</td><td>Text Text</td></tr>
<tr><td>Text Text</td><td>Text Text</td><td>Text Text</td><td>Text Text</td></tr>
<tr><td>Text Text</td><td>Text Text</td><td>Text Text</td><td>Text Text</td></tr>
<tr><td>Text Text</td><td>Text Text</td><td>Text Text</td><td>Text Text</td></tr>
<tr><td>Text Text</td><td>Text Text</td><td>Text Text</td><td>Text Text</td></tr>
<tr><td>More Text</td><td>More Text</td><td>More Text</td><td>More Text</td></tr>
<tr><td>Text Text</td><td>Text Text</td><td>Text Text</td><td>Text Text</td></tr>
<tr><td>Even More Text Text</td><td>Even More Text Text</td><td>Even More Text Text</td><td>Even More Text Text</td></tr>
</table>
</div>
本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处
评论列表(85条)