技术频道导航
HTML/CSS
.NET技术
IIS技术
PHP技术
Js/JQuery
Photoshop
Fireworks
服务器技术
操作系统
网站运营
卡卡网是专业的网站测速平台,网速测试,测试网站速度,就来卡卡网 ~
问题反馈网络日志

【DiyVM】沙田机房/香港云/回国CN2线路/AMD EPYC/39元一月5M/CN2海外云主机 24元/月BGP+CN2海外云 低至25元/月海外主机 低至$2/月

DiyVM:香港VPS惊爆价36元一月
★站长变现★特色悬浮小图标广告
5M CN2 GIA云主机 24元起
【转化好产品,官方高价收量】
一一一云主机 26元起一一一
官方高价收量,每日稳定结算

一一云主机 24元 3折起一一
AWS核心代理U充值 免注册开户
海外CN2云 低至$2.5/月
海外云低至2折 298/年
免费测试★APK免杀 谷歌过保护
官方收量CPA/CPS长期稳定

海外主机 5M CN2 低至$2/月
恒创科技 一 海外服务器 ● 高速稳定
★解决安装报毒★谷歌过保护机制
CN2 GIA/1000Mbps $111/月
超级签★免杀★加固★满意付款
全球云主机 3天试用再买

【菠萝云】香港4G内存99元,马上开通
亿人互联-津/京BGP托管租用/VPS
苹果签名/APP封装/远控免杀
10M CN2海外云VPS 53元/月
一一站长/主播好变现一一有流量就来
站长变现 特色悬浮小图标广告

实力产品变现
实力产品变现
实力产品变现
实力产品变现
实力产品变现
实力产品变现

赞助商

分类目录

赞助商

最新文章

字体单位是相对测量单位,是根据其他一些值计算的,可以动态变化。与字体相关的测量单...
stroke-width设置形状的描边粗细,如果在 HTML 中,框架是从外边缘...
本文给大家介绍10款用SVG蒙版制作的图片转场/过渡动画,并分析如何实现它们。
CSS 数据类型<filter-function>代表可以改变输入图...
CSS box-shadow 属性用于在元素的框架上添加阴影效果。你可以在同一个...
drop-shadow() 是一个CSS 过滤器函数,其将投影效果应用于输入图像...
本文给大家介绍一个SVG实现的网页气泡动画效果。 

搜索

CSS实现:固定Table表头和第一列

作者:admin    时间:2021-6-30 4:56:4    浏览:6397

当表格内容太多的时候,固定表头不让标题滚出屏幕外,是一个很人性化的设计;而当横向项目内容太多时,固定第一列(项目列)也是一个很贴心的设计。本文介绍如何用CSS实现固定Table表头和第一列。

固定Table表头和第一列
固定Table表头和第一列

CSS

  1. table {
  2.   font-family: "Fraunces", serif;
  3.   font-size: 125%;
  4.   white-space: nowrap;
  5.   margin: 0;
  6.   border: none;
  7.   border-collapse: separate;
  8.   border-spacing: 0;
  9.   table-layout: fixed;
  10.   border: 1px solid black;
  11. }
  12. table td,
  13. table th {
  14.   border: 1px solid black;
  15.   padding: 0.5rem 1rem;
  16. }
  17. table thead th {
  18.   padding: 3px;
  19.   position: sticky;
  20.   top: 0;
  21.   z-index: 1;
  22.   width: 25vw;
  23.   background: white;
  24. }
  25. table td {
  26.   background: #fff;
  27.   padding: 4px 5px;
  28.   text-align: center;
  29. }
  30.  
  31. table tbody th {
  32.   font-weight: 100;
  33.   font-style: italic;
  34.   text-align: left;
  35.   position: relative;
  36. }
  37. table thead th:first-child {
  38.   position: sticky;
  39.   left: 0;
  40.   z-index: 2;
  41. }
  42. table tbody th {
  43.   position: sticky;
  44.   left: 0;
  45.   background: white;
  46.   z-index: 1;
  47. }
  48. caption {
  49.   text-align: left;
  50.   padding: 0.25rem;
  51.   position: sticky;
  52.   left: 0;
  53. }
  54.  
  55. [role="region"][aria-labelledby][tabindex] {
  56.   width: 450px;
  57.   height: 400px;
  58.   overflow: auto;
  59.   box-shadow: 0 0 0.8em rgba(0, 0, 0, 0.5);
  60.   outline: 0;
  61. }

HTML

  1. <div role="region" aria-labelledby="caption" tabindex="0">
  2.   <table>
  3.     <caption id="caption">棒球号码</caption>
  4.     <thead>
  5.       <tr>
  6.         <th>Teams</th>
  7.         <th>1</th>
  8.         <th>2</th>
  9.         <th>3</th>
  10.         <th>4</th>
  11.         <th>5</th>
  12.         <th>6</th>
  13.         <th>7</th>
  14.         <th>8</th>
  15.         <th>9</th>
  16.         <th>Runs</th>
  17.       </tr>
  18.     </thead>
  19.     <tbody>
  20.       <tr>
  21.         <th>Milwaukee Brewers</th>
  22.         <td>2</td>
  23.         <td>0</td>
  24.         <td>4</td>
  25.         <td>1</td>
  26.         <td>0</td>
  27.         <td>3</td>
  28.         <td>0</td>
  29.         <td>3</td>
  30.         <td>4</td>
  31.         <td>17</td>
  32.       </tr>
  33.       <tr>
  34.         <th>Los Angles Dodgers</th>
  35.         <td>0</td>
  36.         <td>2</td>
  37.         <td>3</td>
  38.         <td>1</td>
  39.         <td>3</td>
  40.         <td>4</td>
  41.         <td>3</td>
  42.         <td>2</td>
  43.         <td>4</td>
  44.         <td>22</td>
  45.       </tr>
  46.     </tbody>
  47.   </table>
  48. </div>

execcodegetcode

代码解释

这里的“技巧”部分是position: sticky;用法,但更重要的是你必须知道如何处理重叠元素。

固定表格单元格需要有背景,否则我们会看到重叠的内容。它还需要适当的z-index处理,以便当它固定到位时,它会位于它应该位于的顶部。这感觉是最棘手的部分:

  • 确保tbody>th单元格位于常规表格单元格上方,以便它们在水平滚动期间保持在顶部。
  • 确保thead>th单元格在这些单元格之上,以便垂直滚动。
  • 确保thead>th:first-child单元格是最高的,因为它需要位于正文单元格上方,并且它又是水平滚动的同级标题。

只固定Table表头

如果只想固定Table表头,那么很简单,我们只需把前面的HTML代码<th>...</th>这列即是第一列去掉即可。

只固定Table表头
只固定Table表头

demodownload

标签: css  css3  table  
x
广告: 【限时】云主机 24元/月