您现在的位置是:网站首页> 编程资料编程资料
CSS实现表格首行首列固定和自适应窗口的实例代码css display table 自适应高度、宽度问题的解决详解CSS多种三列自适应布局实现CSS实现背景图片屏幕自适应的实现css3实现自适应浏览器图片布局特效css实现六种自适应两栏布局方式CSS将img图片填满父容器div并自适应容器大小css实现两栏布局,左侧固定宽,右侧自适应的多种方法
2023-10-17
300人已围观
简介 这篇文章主要介绍了CSS实现表格首行首列固定和自适应窗口的实例代码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
今天校招笔试题要求实现一个首行首列固定,宽度自适应窗口变化,但窗口缩小到一定宽度不能再缩小,出现水平滚动条…
当时我写错了,我一时想不起改用什么办法首行首列固定,用绝对定位,父亲相对定位…这样会有很多问题要解决…
所以回来我学了一下,以前教程没学过这些属性,涨知识了哈哈…
先了解几个概念:
table-layout:
table-layout属性有两种特定值:
auto(预设值)-表格的总宽度决定每一个储存格(cell)的最大值
fixed - 表格的总宽度决定于表格width的定义,以及各栏位(column)width的定义, 没有定义宽度就平分表格宽度。
表格宽度通过表格的宽度来设置,某一列的宽度仅由该列首行的单元格决定,其他行单元格的宽度不会影响整列的宽度。
注意:自定义宽度要定义在首个单元格才有效果(th)
position : sticky
粘性定位可以被认为是相对定位和固定定位的混合。元素在跨越特定阈值前为相对定位,之后为固定定位。
在目标区域中可见时,他的行为就像relative 不会有任何变化,而当页面滚动超出目标区域时,他的表现改为fixed会固定于目标位置
sticky元素会“固定”在离它最近的一个拥有“滚动机制”的祖先上(当该祖先的overflow是hidden、scroll、auto、overlay时), 即便这个祖先不是最近的真实可滚动祖先。
要注意的是当position : sticky应用于table,只能作用于th和td,作用tr没有效果,并且一定要定义目标位置 left / right / top / bottom 才会出现固定效果!
实现:
1.自适应
表格外包一层div,宽度100% ,溢出出现滚动条
.box { width: 100%; height: 200px; background-color: #eee; overflow: auto; margin: 10px; }表格table, 宽度100%, 设置一个最小宽度,我这里设置1000px,这个根据个人设定哈
table { width: 100%; min-width: 1000px; /* 自定义宽度要设置成fixed */ table-layout: fixed; /* 设置单元格间距 */ border-spacing:0; }2.固定首行首列
需要在首行th 和首列设置粘性定位
首行设置
thead tr th { /* th设置粘性定位 */ background-color: pink; position: sticky; top: 0; /* 顶部border */ border-top: 1px solid black; }首列设置
td:first-child { /* td第一个粘性定位 */ position: sticky; left: 0; background-color: skyblue; }如果需要改变单元格宽度,需要设置table-layout: fixed
这个属性设置了默认单元格平分table宽度,如果首列第一个单元格(th)设置了固定宽度200px,那么这列宽度就是200px
注意是第一个单元格
td:first-child,th:first-child { /* 设置首列200 ,设置th才有效,这里加上td主要是为了设置Border*/ width: 200px; border-left: 1px solid black; }还有一个注意地方是 边框border,要单独设定每个单元格边框border, 如果border collapse,滚动会跟着动,效果不好看。
整体代码:
Document
姓名 学号 年龄 成绩 爱好 可乐11111111111111111111111111111111111111111111111111111111 可乐11111111 可乐222222222 可乐333333333333333333333333333 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐 可乐
效果:(做的还不是很好,继续加油)

到此这篇关于CSS实现表格首行首列固定和自适应窗口的实例代码的文章就介绍到这了,更多相关css实现表格首行首列固定内容请搜索以前的文章或继续浏览下面的相关文章,希望大家以后多多支持!
相关内容
- CSS 说明横向进度条最后显示文字的实现代码css 横向进度条和竖向进度条实现代码
- CSS3制作3D立方体loading特效10种CSS3实现的loading动画,挑一个走吧?CSS3实现渐变的loading加载进度条特效代码CSS loading效果之 吃豆人的实现使用css实现android系统的loading加载动画CSS 实现各种 Loading 效果附带解析过程
- css之Display、Visibility、Opacity、rgba和z-index: -1的区别解决CSS中子元素z-index与父元素兄弟节点的层级问题css 层叠与z-index的示例代码CSS3关于z-index不生效问题的解决z-index为负值的元素无法点击到的解决方法CSS z-index 层级关系优先级的概念css z-index层重叠顺序使用介绍css中z-index: 0和z-index: auto的区别
- 全民飞机大战第六关通过攻略_手机游戏_游戏攻略_
- 全民英雄黑暗领主进化方法攻略_手机游戏_游戏攻略_
- 全民飞机大战 第四关怎么过 第4关通关攻略_手机游戏_游戏攻略_
- 天天飞车威酷和哥斯特那个比较好及区别解析_手机游戏_游戏攻略_
- 天天酷跑神圣祝福道具改版属性详细介绍_手机游戏_游戏攻略_
- 炉石传说 术士飞刀流攻略_手机游戏_游戏攻略_
- 愤怒的小鸟go 黑屏闪退问题的解决方法分享_手机游戏_游戏攻略_
