table表头固定,内容滚动条

table-layout: fixed;
border-width: 0;border-collapse:collapse;empty-cells: show;

 

 

<div class="table-wrap">
  <div class="table-head">
    <div class="table-head-wrap">
      <table class="grid">
        <colgroup>
          <col style="width: 80px;">
          <col>
          <col>
          <col style="width: 217px;">
        </colgroup>
        <thead>
        <tr>
          <th><span>序号</span></th>
          <th><span>国籍</span></th>
          <th><span>战队</span></th>
          <th><span>比分</span></th>
        </tr>
        </thead>
      </table>
    </div>
  </div>
  <div class="table-content">
    <table class="grid">
      <colgroup>
        <col style="width: 80px;">
        <col>
        <col>
        <col style="width: 200px">
      </colgroup>
      <tbody>
      <tr>
        <td><span>01</span></td>
        <td><span>中国</span></td>
        <td><span>小南国</span></td>
        <td><span>20</span></td>
      </tr>
      <tr>
        <td><span>02</span></td>
        <td><span>日本</span></td>
        <td><span>死棒槌</span></td>
        <td><span>10</span></td>
      </tr>
      <tr>
        <td><span>03</span></td>
        <td><span>菲律宾</span></td>
        <td><span>老棒槌</span></td>
        <td><span>6</span></td>
      </tr>
      <tr>
        <td><span>04</span></td>
        <td><span>印度</span></td>
        <td><span>小棒槌</span></td>
        <td><span>4</span></td>
      </tr>
      <tr>
        <td><span>05</span></td>
        <td><span>美国</span></td>
        <td><span>大棒槌</span></td>
        <td><span>2</span></td>
      </tr>
      <tr>
        <td><span>06</span></td>
        <td><span>韩国</span></td>
        <td><span>你就是个棒槌</span></td>
        <td><span>0</span></td>
      </tr>
      </tbody>
    </table>
  </div>
</div>

 

* {margin: 0;padding: 0;box-sizing: border-box;}
html{font-size:62.5%;}
body{font-size: 10px;}
.table-wrap{width: 620px;border:1px solid #e6e6e6;margin:100px auto;}
.table-head{border-bottom: 1px #e6e6e6 solid;}
.table-content{height: 189px;overflow-y:scroll;}
.grid{table-layout: fixed;width:100%;border-width: 0;border-collapse:collapse;empty-cells: show;font-size: 14px;}
.grid tr th{border-left:1px solid #e6e6e6;padding: 0.929rem 0.5rem;text-align:left;overflow:hidden;text-overflow: ellipsis;white-space: nowrap;}
.grid tr td{border-left: 1px solid #e6e6e6;border-bottom: 1px solid #e6e6e6;padding: 0.929rem 0.5rem;overflow:hidden;text-overflow: ellipsis;white-space: nowrap;}
.grid tr td:first-child{border-left-width:0;}
.grid tr:last-child td{border-bottom-width:0;}

 

转载于:https://www.cnblogs.com/mudeng-007/p/7423428.html

如果想要实现表头固定内容滚动的效果,可以使用CSS中的position属性和JavaScript中的scroll事件来实现。具体的实现步骤如下: 1. 首先,将表格表头表格内容分别放入两个div中,并设置它们的class为"fixed-header"和"scrollable-content"。 2. 设置.fixed-header的position为fixed,top为0,left为0,z-index为1,使其固定在屏幕顶部。 3. 设置.scrollable-content的overflow为auto,并且设置高度和宽度。同时,设置一个padding-top值,使得滚动条不会遮挡住表格的第一行。 4. 在JavaScript中,监听.scrollable-content的scroll事件,并且在事件触发时,将.fixed-header的left值设置为负的.scrollable-content的scrollLeft值,使表头随着内容滚动而滚动。 下面是一个示例代码: HTML代码: ``` <div class="fixed-header"> <table> <thead> <tr> <th>表头1</th> <th>表头2</th> <th>表头3</th> </tr> </thead> </table> </div> <div class="scrollable-content"> <table> <tbody> <tr> <td>内容1</td> <td>内容2</td> <td>内容3</td> </tr> ... </tbody> </table> </div> ``` CSS代码: ``` .fixed-header { position: fixed; top: 0; left: 0; z-index: 1; } .scrollable-content { overflow: auto; height: 200px; width: 100%; padding-top: 50px; /*表头高度*/ } ``` JavaScript代码: ``` $('.scrollable-content').on('scroll', function(){ $('.fixed-header').css({ 'left': -$(this).scrollLeft() }); }); ``` 上面的代码中,使用jQuery的on方法监听.scrollable-content的scroll事件,并且在事件触发时,将.fixed-header的left值设置为负的.scrollable-content的scrollLeft值。 需要注意的是,如果表格表头内容列数不一致,可能会导致表头内容位置错乱的问题。如果出现这种情况,可以将表格表头内容分别放到两个table中,并设置它们的宽度和列数相同。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值