IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> table实现固定行列效果 -> 正文阅读

[JavaScript知识库]table实现固定行列效果

### 表格制作
```css
1、table的常用属性
? ?1.1、cellspacing和cellspadding区别
?? ??? ?属性?? ?含义?? ?常用属性值
?? ??? ?cellspacing?? ?设置单元格与单元格边框之间的空白间距?? ?像素值(默认为2px)
?? ??? ?cellspadding?? ?设置单元格内容与单元格边框之间的空白距离?? ?像素值(默认为1px)
? ?1.2、table-layout
? ? ? ? fixed: 列宽由表格宽度和列宽度设定。
? ? ? ? auto: 默认。列宽度由单元格内容设定。
?? ??? ?inherit: ?规定应该从父元素继承 table-layout 属性的值。
2、固定行
? ?/* 固定行 */
? ?thead th {
? ??? ?background-color: antiquewhite;
? ??? ?position: sticky;
? ??? ?position: -webkit-sticky;
? ??? ?top: 0;
? ?}
? ?
? ?thead th:first-child {
? ??? ?z-index: 20;
? ?}
3、固定列
? ?/**固定首列**/
? ?th:first-child , td:first-child {
? ??? ?position: sticky; /* 首列使用粘性属性,固定到原位置 */
? ??? ?position: -webkit-sticky;
? ??? ?left: 0; /* 使用sticky时需要配置定位标识 */
? ??? ?background-color: bisque;
? ??? ?z-index: 10; /* 在滑动时,后面的内容会覆盖掉前首列单元,需要设置z级别 */
? ?}

4、常见问题
? ?4.1、当外层div固定宽高后,对table每个单元格th和tb的width设置后,当行的单元格width的总和超过div的width时,此时单元格的width
? ? ? ? 无效,会出现自动平分每个单元格,具体原因是 table-layout默认auto,它是列宽根据内容自适应。
?? ??? ?解决方式:table上的table-layout属性修改成fixed,固定表格,对应的列宽将影响到整体表格宽高
?? ??? ?demo
?? ??? ?<div>
?? ??? ? ?<table>
?? ??? ? ? ? <thead>
?? ??? ??? ??? ?<tr><th></th><th></th><th></th><th></th></tr>
?? ??? ??? ? </thead>
?? ??? ??? ? <tbody>
?? ??? ??? ? ? ?<tr><td></td><td></td><td></td><td></td></tr>
?? ??? ??? ??? ?<tr><td></td><td></td><td></td><td></td></tr>
?? ??? ??? ??? ?<tr><td></td><td></td><td></td><td></td></tr>
?? ??? ??? ? </tbody>
?? ??? ? ?</table>
?? ??? ?</div>
?? ??? ?<style>
?? ??? ??? ?/**
?? ??? ??? ? * 最外层盒子处理
?? ??? ??? ? * 1、设置边框 考虑每列的边框是 右边、下边框,最外层盒子就进设置左边、上边框
?? ??? ??? ? * 2、固定宽高,当出现内容溢出时,自动显示滚动条
?? ??? ??? ? * 3、table标签中消除每个列格原生的占用空间,
?? ??? ??? ? * ? ?cellspacing="0" ?// 消除每个单元格的间距
?? ??? ??? ? * ? ?cellpadding="0" ?// 消除每个单元格的内间距
?? ??? ??? ?**/
?? ??? ??? ?.box {
?? ??? ??? ??? ?overflow: auto; /*table列超出宽度后,自动出现滚动条*/
?? ??? ??? ??? ?width: 300px;
?? ??? ??? ??? ?//height: 240px;
?? ??? ??? ??? ?border: 1px solid #DCDCDC;
?? ??? ??? ??? ?border-right: 0;
?? ??? ??? ??? ?border-bottom: 0;
?? ??? ??? ??? ?box-sizing: border-box;
?? ??? ??? ?}
?? ??? ??? ?
?? ??? ??? ?table {
?? ??? ??? ??? ?border-collapse: separate; /**处理边框重叠情况**/
?? ??? ??? ??? ?table-layout: fixed; /**固定表格,使单元格宽度可设置**/
?? ??? ??? ??? ?width: 100%;
?? ??? ??? ?}
?? ??? ??? ?
?? ??? ? ? ?th,td {
?? ??? ??? ??? ?width: 100px;
?? ??? ??? ??? ?height: 20px;
?? ??? ??? ??? ?border-right: 1px solid #DCDCDC;
?? ??? ??? ??? ?border-bottom: 1px solid #DCDCDC;
?? ??? ??? ?}
?? ??? ??? ?
?? ??? ??? ?/* 固定行 */
?? ??? ??? ?thead th {
?? ??? ??? ??? ?background-color: antiquewhite;
?? ??? ??? ??? ?position: sticky;
?? ??? ??? ??? ?position: -webkit-sticky;
?? ??? ??? ??? ?top: 0;
?? ??? ??? ?}
?? ??? ??? ?
?? ??? ??? ?thead th:first-child {
?? ??? ??? ??? ?z-index: 20;
?? ??? ??? ?}
?? ??? ??? ?
?? ??? ??? ?/**固定首列**/
?? ??? ??? ?th:first-child , td:first-child {
?? ??? ??? ??? ?position: sticky; /* 首列使用粘性属性,固定到原位置 */
?? ??? ??? ??? ?position: -webkit-sticky;
?? ??? ??? ??? ?left: 0; /* 使用sticky时需要配置定位标识 */
?? ??? ??? ??? ?background-color: bisque;
?? ??? ??? ??? ?z-index: 10; /* 在滑动时,后面的内容会覆盖掉前首列单元,需要设置z级别 */
?? ??? ??? ?}
?? ??? ?</style>
?? ??? ?
```

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-05-08 07:59:01  更:2022-05-08 08:00:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 22:24:54-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码