【发布时间】:2019-12-19 04:16:02
【问题描述】:
这是一个带有固定行和列的表格。我也在尝试通过固定标题来改进它。 IE。当您滚动表格时,不应滚动标题 - 它应该永久可见。有可能吗?
我已经尝试过caption-side: top-outside,但是:
-
top-outside仅适用于 Firefox。相反,我的目标浏览器是 Chrome。 - 看来根本解决不了任务。
.wrapper {
height: 200px;
overflow-x: auto;
width: 500px;
}
caption, th, p {
font-size: x-large;
}
caption {
text-align: left;
}
th {
background: rgba(255, 225, 225);
position: sticky;
top: 0;
}
th:first-of-type, td:first-of-type {
left: 0;
position: sticky;
}
th:first-of-type {
z-index: 2;
}
td:first-of-type {
background: rgba(225, 255, 225);
z-index: 1;
}
th, td p {
white-space: nowrap;
}
td p {
margin-top: 0;
}
td p:last-child {
margin-bottom: 0;
}
th, td {
border-bottom: 1px dashed red;
}
<div class="wrapper">
<table>
<caption>Caption</caption>
<thead>
<tr>
<th>Column 1 aaa aaa aaa</th>
<th>Column 2 bbb bbb bbb</th>
<th>Column 3 ccc ccc ccc</th>
</tr>
</thead>
<tbody>
<tr>
<td><p>Column 1 aaa aaa aaa</p></td>
<td><p>Column 2 bbb bbb bbb</p><p>Column 2 bbb bbb bbb</p></td>
<td><p>Column 3 ccc ccc ccc</p></td>
</tr>
<tr>
<td><p>Column 1 aaa aaa aaa</p></td>
<td><p>Column 2 bbb bbb bbb</p></td>
<td><p>Column 3 ccc ccc ccc</p></td>
</tr>
<tr>
<td><p>Column 1 aaa aaa aaa</p></td>
<td><p>Column 2 bbb bbb bbb</p></td>
<td><p>Column 3 ccc ccc ccc</p></td>
</tr>
<tr>
<td><p>Column 1 aaa aaa aaa</p></td>
<td><p>Column 2 bbb bbb bbb</p></td>
<td><p>Column 3 ccc ccc ccc</p></td>
</tr>
<tr>
<td><p>Column 1 aaa aaa aaa</p></td>
<td><p>Column 2 bbb bbb bbb</p></td>
<td><p>Column 3 ccc ccc ccc</p></td>
</tr>
</tbody>
</table>
</div>
【问题讨论】:
-
您是否尝试在
caption元素上设置position: sticky? -
是的。它提供了一些的效果,但它太丑了:jsfiddle.net/zs7Ldhea
-
标签: javascript jquery html css html-table