首页 > 其他分享 >table固定表头和列 css实现表格固定表头

table固定表头和列 css实现表格固定表头

时间:2024-04-23 11:11:40浏览次数:25  
标签:box 姓名 表头 width 固定 table

Hello,大家好,我是站长鹏仔,本次鹏仔开发的项目中,实现出功能如图所示,固定表格的头部和左侧,在超出时滚动条滚动悬浮,之前给大家写过一次表格表头固定,是用占位的方式(https://www.sharedbk.com/post/178.html),太麻烦了,本次给大家分享一个更简单的方法。

本次主要用到的css属性是粘性定位 position: sticky; 这个属性可以理解为 position: relative; 正常显示时没有任何变化,但是当页面滚动时,他就相当于 fixed 一样固定到某个位置,一般常用于标题、操作栏、表格表头等。

【PS】 需要配合 top、right、bottom、left 使用才会出现固定效果。

 

下方鹏仔简单给大家写的案列,可自行复制尝试。

CSS
<style>
    body,div,p,ul,ol,li,dl,dt,dd,table,tr,td,form,hr,h1,h2,h3,h4,h5,h6,fieldset,img,input {
        margin: 0;
        padding: 0;
    }
    body,html {
        width: 100%;
        min-height: 100%;
    }

    .table-layer{
        width: 600px;
        max-height: 200px;
        overflow: scroll;
        background: rgba(0,0,0,.1);
    }
    table thead tr{
        position: sticky;
        top: 0;
        z-index: 10;
    }
    .table-name{
        background: #F5F5F5;
        position: sticky;
        left: 0px;
        z-index: 11;
    }
    .table-name div{
        width: 128px;
        padding: 12px 8px;
        box-sizing: border-box;
        text-align: center;
    }
    .table-con{
        min-width: 240px;
        padding: 12px 8px;
        box-sizing: border-box;
    }
</style>
HTML
<div class="table-layer">
    <table border="1" cellspacing="0" cellpadding="0">
        <thead>
            <tr style="background: #F5F5F5; top: 0;z-index: 12;">
                <td class="table-name">
                    <div>姓名</div>
                </td>
                <td class="table-con">
                    <div>姓名</div>
                </td>
                <td class="table-con">
                    <div>姓名</div>
                </td>
                <td class="table-con">
                    <div>姓名</div>
                </td>
                <td class="table-con">
                    <div>姓名</div>
                </td>
                <td class="table-con">
                    <div>姓名</div>
                </td>
            </tr>
        </thead>
        <tr>
            <td class="table-name">
                <div>姓名</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
        </tr>
        <tr>
            <td class="table-name">
                <div>姓名</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
        </tr>
        <tr>
            <td class="table-name">
                <div>姓名</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
        </tr>
        <tr>
            <td class="table-name">
                <div>姓名</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
        </tr>
        <tr>
            <td class="table-name">
                <div>姓名</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
            <td class="table-con">
                <div>鹏仔</div>
            </td>
        </tr>
    </table>
</div>

 

标签:box,姓名,表头,width,固定,table
From: https://www.cnblogs.com/tp1996/p/18152404

相关文章

  • 固定组合字母的象形含义
    目录ain自己tr、str、dr、br拽,拖,抽,分开wr拧fl飞,流th伸出,指向st停,站shs表发出、sh表射出ch=c抓住、切分、掌握sp发出,散开pl平整的,平的sw蜿蜒的水、摇摆,摇动sl展开,滑,猛然用力英语单词由26字母构成,26个字母都有各自的意义,同样,某些固定的字母组合也有着固定的意思,透......
  • DataTable 过滤、求和、去重
    DataTable过滤、求和、去重//多个多个重复去除//去掉factoryCode,recWeek,materialNo,quantity,recDate,uploadDate相同的重复数据DataViewdv=newDataView(dt);//dt=dv.ToTable(true,"factoryCode,recWeek,materialNo,quantity,recDate,uploadDate");//求和......
  • java解析html的table元素
    java解析html的table元素解析HTMLTable元素的Java实现在网页开发中,HTML的Table元素是用来展示数据的一种常见方式。有时候我们需要从网页中提取表格中的数据,这就需要使用Java对HTMLTable进行解析。本文将介绍如何使用Java实现对HTMLTable元素的解析,以及一些常......
  • vue 商品sku添加,笛卡尔算法,商品添加。动态生成table,table添加值后 再生成的table 不
     <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>快速入门</title><!--引入组件库--><linkrel="stylesheet"href="https://un......
  • vue 商品sku,笛卡尔算法,商品添加。动态生成table,table添加值后 再生成的table 不改变t
     <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>快速入门</title><!--引入组件库--><linkrel="stylesheet"href="https://un......
  • Spark SQL 抽样函数 ——TABLESAMPLE 的坑点
    最近需要实现一段SparkSQL逻辑,对数据集进行抽样指定的行数。由于数据集较大,刚开始的逻辑是,取窗口函数随机排序后row_number的前n行。但运行速度较慢,所以想起了TABLESAMLE函数,支持直接取Rows,尝试后发现速度特别快,基本上几秒内就完成对亿级数据的采样。所以好奇就去查......
  • C++ STL -- HashTable
    HashTable一般常用的unordered_set、unordered_map都是基于哈希表实现的,哈希表主要需要注意的是哈希冲突,迭代器等基础哈希映射使用哈希函数将键映射到索引的数据结构。即将原始数组索引通过哈希函数映射到一个哈希值上,从而将一个大范围索引,减小到一个小的固定范围哈希冲突......
  • 比较两个table是否相同
    两个列表是否相同functionIsTwoListValueSame(list1,list2)localcnt1=#list1localcnt2=#list2ifcnt1~=cnt2thenreturnfalseendlocaltab={}localsameCnt=0fori=1,cnt1dotab[list1[i]]=trueendfori......
  • linux7-iptables与firewall
    1.iptables 1规则链的默认策略拒绝动作只能是DROP,而不能是REJECT。2在日常运维工作中,经常会使用ping命令来检查对方主机是否在线,而向防火墙的INPUT3规则链中添加一条允许ICMP流量进入的策略规则就默认允许了这种ping命令检测行为。4[root@linuxprobe~]#iptable......
  • FineReport11 报表技巧02- 实现类Excel表头筛选功能
    背景:在报表开发中,有的需求方用习惯Excel的表头筛选时,就不太习惯帆软的特意点击报表控件进行筛选,希望报表筛选方式可以类似Excel那种直接在表头进行筛选的功能最终效果如下:实现步骤:1.1、数据集准备产品信息表:SELECT客户,产品,数量,cast(下单时间asdate)as下单时间,下单......