如何使用 CSS制作具有固定标题的可滚动表

我想让我的表头固定。表存在于可滚动的 div 中。请在这里查看我的代码:http://jsfiddle.net/w7Mm8/114/请建议我解决这个问题。

我想让我的表头固定。表存在于可滚动的 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>
63

您想要做的是将表的内容与表的标题分开。您只希望滚动<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; }
5

我能想到一个厚脸皮的方式来做到这一点,我不认为这将是最好的选择,但它会工作。

将标题创建为单独的表,然后将另一个放在 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>

本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处

(449)
我在我的常规图表中使用了TrueStrength指数我可以在tradingview的cryptoscreener中使用它吗
上一篇
如何在VisualStudioReact项目中使用纱线而不是npm
下一篇

相关推荐

  • css 子样式:标题

    CSS 子样式是指在父样式的基础上,对其子元素进行单独定义的样式。它可以使用类选择器、ID 选择器或者属性选择器来定义,如下所示:…

    2023-04-13 14:42:51
    0 27 48
  • css导入字体:标题

    示例示例CSS导入字体可以通过@font-face规则来实现,代码示例如下:…

    2023-04-22 12:42:42
    0 74 88
  • css背景图片:Unlock the Power of Creative Backgrounds

    示例示例CSS背景图片是一种使用CSS样式来定义HTML元素的背景图像。它可以让你在网页中添加图片,而不需要使用标签。CSS背景图片的语法如下:…

    2023-04-27 07:58:21
    0 45 44
  • sci和cssci哪个高级一种新的科学出版标准

    SCI和CSSCI是两个学术期刊收录索引,它们都用于衡量学术期刊的发表质量。SCI(Science Index)是由美国科学信息研究所(ISI)提供的一种学术期刊收录索引,它收录了来自全球各地的学术期刊,并以引文索引的方式收录其中的文章。SCI的收录索引覆盖了超过8000种期刊,其中包括了许多国际一流期刊,如Nature、Science、Cell、PNAS等。…

    2023-05-14 11:16:30
    0 30 64
  • css文本垂直居中:标题

    CSS文本垂直居中的方法有很多,以下是其中常用的几种:使用 line-height 属性:…

    2023-05-09 10:53:27
    0 43 29
  • css选择第三个元素:Third Element

    CSS选择第三个元素的代码如下:上述代码中,element表示要选择的元素,nth-child()是CSS中的伪类,用于选择某个父元素的第n个子元素,圆括号中的数字表示第几个,上述代码表示选择第三个元素。…

    2023-04-12 07:21:21
    0 15 46
  • css 字体缩放:Welcome to My Website!

    示例示例CSS 字体缩放可以通过 font-size 属性来实现。font-size 属性可以使用绝对单位(如 px、pt 等)或相对单位(如 em、rem 等)来设置字体大小。…

    2023-05-01 02:05:59
    0 69 68
  • css ie兼容:标题

    CSS IE兼容指的是,在不同版本的IE浏览器中,使用相同的CSS代码,可以达到相同的效果。为了实现这一目标,需要使用特定的CSS选择器,以及特定的CSS属性,来解决IE浏览器中的兼容性问题。…

    2023-05-25 11:58:01
    0 25 71

发表评论

登录 后才能评论

评论列表(85条)