javascript - 在单元格很长的表格中保持表格行内容清晰可见

标签 javascript jquery html css

我有一个以下格式的 HTML 表格:

+-------------+-------------+----------+
| Single line | Single line | Very,    |
|             |             | very     |
|             |             | long     |
|             |             | text,    |
|             |             | going    |
|             |             | over     |
|             |             | multiple |
|             |             | screen   |
|             |             | pages    |
+-------------+-------------+----------+
| Next line   | ...         | ...      |

滚动表格时,我遇到“单行”条目看不见的问题,这使得该表格(甚至更)难以处理。

有没有办法让单行条目保持可见(当然是在单元格内),可能使用 CSS 或简单的 JavaScript/jQuery?

至于代码,它实际上只是包含 jQuery 的页面上的 HTML 表格:

<table>
    <thead>
        <tr>
            <th>Head</th><th>Head</th><th>Head</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Short</td>
            <td>Short</td>
            <td>Long, long, long</td>
        </tr>
        <tr>
            <td>Short</td>
            <td>Short</td>
            <td>Long, long, long</td>
        </tr>
    </tbody>
</table>

我不是在寻找具体的解决方案,而是在寻找正确的方向。

最佳答案

是的,你可以将内容放在td中的另一个元素中,例如span,然后将其设置为position: Sticky顶部:0;

table {
  max-width: 240px;
}

table tr td{
  vertical-align: top;
}

table tr td > *{
  top: 0;
  position: sticky;
}
<table border="1">
<thead>
    <th>Column 1</th>
    <th>Column 2</th>
</thead>
<tbody>
  <tr>
    <td><span>Single Line</span></td>
    <td><span>Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut! Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut! Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut! Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut! Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut! Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut! Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut! Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut! Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut! Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut!</span></td>
  </tr>
  <tr>
    <td><span>Another Single Line</span></td>
    <td><span>Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut! Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut! Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut! Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut! Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut! Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut! Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut! Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut! Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut! Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eum optio corporis alias esse. Veniam facilis odio doloribus nostrum molestias architecto! Doloremque cum exercitationem aspernatur corrupti, ullam blanditiis modi. Et, ut!</span></td>
  </tr>
</tbody>
</table>

关于javascript - 在单元格很长的表格中保持表格行内容清晰可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56251072/

相关文章:

javascript - 如果存在于另一个数组中,则从一个数组中移除字符串

jquery - 使用 jQuery 问题切换重叠 div 的 z-index

html - 可悬停的菜单项

javascript - VueJS 和 Laravel mix 中渲染错误

javascript - 使用 json 文件在 javascript 中显示幻灯片的问题

javascript - 如何使用 BeautifulSoup 从 JSON 数据制作 Python Dict

c# - 为什么 JSON 响应中的 HTML 会被编码?

javascript - 隐藏包含特定文本的元素

JQuery 切换隐藏了 div 元素

javascript - 无法成功上传图片到s3然后查看