gpt4 book ai didi

css - 网格内溢出自动内的粘性表格标题

转载 作者:太空宇宙 更新时间:2023-11-03 22:16:38 24 4
gpt4 key购买 nike

类似的问题已经发布,但这是对问题的新看法。

目前我所知道的

  • 粘性位置在溢出的父级中不起作用
  • 可以使用 javascript 对其进行“破解”,但是对于所有移动部件,工作量太大(溢出位置、大小等)

我的问题是上下文

  • 我使用了一个网格,其中 topbottom 应该是固定的,ma​​in 应该是可滚动的
  • 主要有一个表格,以后可能会垂直和水平溢出
  • th 设置为 sticky(但由于溢出而不起作用)
  • 有一次我通过使用带有松散元素(没有父元素)的网格来解决这个问题,但是那太乱了无法使用

问题

  • 我更喜欢纯 CSS 解决方案
  • 我该如何解决?

https://jsfiddle.net/jw147aqk/1/

您需要调整窗口大小以使表格溢出。

* {
padding: 0;
margin: 0;
}

html, body {
height: 100%;
}

.wrap {
background: #eee;
height: 100%;

display: grid;
grid-template-rows: 50px 1fr 50px;
grid-template-areas: "header" "main" "footer";
}

header {
grid-area: header;
background: green;
color: #fff;
}

main {
overflow-y: auto;
}

footer {
grid-area: footer;
background: #ba0000;
color: #fff;
}

table {
width: calc(100% - 3px);
border-collapse: collapse;
}

table th {
background: #000;
color: #fff;
height: 50px;
position: sticky;
}

table td {
background: #fff;
height: 50px;
border: 1px solid #ccc;
}
<div class="wrap">
<header>My header</header>
<main>
<table>
<thead>
<tr>
<th>Head first</th>
<th>Head second</th>
</tr>
</thead>
<tbody>
<tr>
<td>Cell first</td>
<td>Cell second</td>
</tr>
<tr>
<td>Cell first</td>
<td>Cell second</td>
</tr>
<tr>
<td>Cell first</td>
<td>Cell second</td>
</tr>
<tr>
<td>Cell first</td>
<td>Cell second</td>
</tr>
<tr>
<td>Cell first</td>
<td>Cell second</td>
</tr>
<tr>
<td>Cell first</td>
<td>Cell second</td>
</tr>
<tr>
<td>Cell first</td>
<td>Cell second</td>
</tr>
<tr>
<td>Cell first</td>
<td>Cell second</td>
</tr>
<tr>
<td>Cell first</td>
<td>Cell second</td>
</tr>
<tr>
<td>Cell first</td>
<td>Cell second</td>
</tr>
<tr>
<td>Cell first</td>
<td>Cell second</td>
</tr>
<tr>
<td>Cell first</td>
<td>Cell second</td>
</tr>
</tbody>
</table>
</main>
<footer>Footer</footer>
</div>

最佳答案

top: 0; 添加到 table th

table th {
background: #000;
color: #fff;
height: 50px;
position: sticky;
top: 0;
}

关于css - 网格内溢出自动内的粘性表格标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56461368/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com