IT源码网

前端html之Table实现表头固定讲解

leader 2019年11月29日 Web前端 458 0

说明:这里主要实现了表头的固定和上下滚动的滑动实现;时间的原因未对左右滑动进行实现学习和总结,后续会对左右滑动进行实现。

一、先上代码:

<!DOCTYPE html> 
<html> 
 
    <head> 
        <meta charset="utf-8" /> 
        <title>表格头部固定</title> 
        <style type="text/css"> 
            .table-head table,.table-body table{width:100%;border-collapse:collapse;} 
            .table-head{padding-right:17px;background-color:#999;color:#000;} 
            .table-body{width:100%; height:300px;overflow-y:auto;} 
            .table-body table tr:nth-child(2n+1){background-color:#f2f2f2;} 
             
            .table-body table tr td{ 
                border:1px solid red; 
                text-align: center; 
            } 
        </style> 
    </head> 
 
    <body> 
        <div style="width:100%;"> 
            <div class="table-head"> 
                <table> 
                    <colgroup><col span="2" style="width: 100px;" /><col /></colgroup> 
                    <thead> 
                        <tr> 
                            <th>序号</th> 
                            <th>内容</th> 
                        </tr> 
                    </thead> 
                </table> 
            </div> 
            <div class="table-body"> 
                <table> 
                    <colgroup><col span="2" style="width: 100px;" /><col /></colgroup> 
                    <tbody> 
                        <tr><td>1</td><td>我只是用来测试的</td></tr> 
                        <tr><td>2</td><td>我只是用来测试的</td></tr> 
                        <tr><td>3</td><td>我只是用来测试的</td></tr> 
                        <tr><td>4</td><td>我只是用来测试的</td></tr> 
                        <tr><td>5</td><td>我只是用来测试的</td></tr> 
                        <tr><td>6</td><td>我只是用来测试的</td></tr> 
                        <tr><td>7</td><td>我只是用来测试的</td></tr> 
                        <tr><td>8</td><td>我只是用来测试的</td></tr> 
                        <tr><td>9</td><td>我只是用来测试的</td></tr> 
                        <tr><td>10</td><td>我只是用来测试的</td></tr> 
                        <tr><td>11</td><td>我只是用来测试的</td></tr> 
                        <tr><td>12</td><td>我只是用来测试的</td></tr> 
                        <tr><td>13</td><td>我只是用来测试的</td></tr> 
                        <tr><td>14</td><td>我只是用来测试的</td></tr> 
                        <tr><td>15</td><td>我只是用来测试的</td></tr> 
                    </tbody> 
                </table> 
            </div> 
        </div> 
    </body> 
</html>

二、演示:

序号 内容
1 我只是用来测试的
2 我只是用来测试的
3 我只是用来测试的
4 我只是用来测试的
5 我只是用来测试的
6 我只是用来测试的
7 我只是用来测试的
8 我只是用来测试的
9 我只是用来测试的
10 我只是用来测试的
11 我只是用来测试的
12 我只是用来测试的
13 我只是用来测试的
14 我只是用来测试的
15 我只是用来测试的

三、注意:

其实关键之处在于

1、使用了colgroup标签,来对上下两个表格的列宽进行了定义,让他们保持一致。

2、上边的div .table-head添加了样式padding-right:17px,这个宽度是为了保证跟下边的div .table-body的滚动条保持一致,同时下边的表格.table-body添加了样式overflow-y:scroll;

只要保证上述两点的话,你也可以做出固定表头的表格来,同时不会发生上下的列不对齐的问题,屡试不爽!

文章来源于:https://www.cnblogs.com/dacuotecuo/p/3657779.html,请尊重原创,转载请注明出处。

发布评论
IT源码网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

前端插件--总结讲解
你是第一个吃螃蟹的人
发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。