2023年6月20日发(作者:)
table的td、th的⼀些样式问题(宽度,边框,滚动条,多⾏多列的表头thead固定)1. 给table加边框table{ border-collapse: collapse;
/*表格的边框合并为⼀个单⼀的边框*/}table, table tr th, table tr td {
border:1px solid #ccc;
}还有种傻傻的⽅法:table{ border-top:1px solid #ccc; border-left:1px solid #ccc;
}table tr td, table tr th{ border-right:1px solid #ccc; border-bottom: 1px solid #ccc;
}2.给table的th固定宽度① 设置table的宽度② table设置table-layout : fixed ;③ 设置th宽度
3.给table加滚动条在table外包⼀层div,div设置overflow属性div{ overflow-x: scroll;
} 4.给td加滚动条在td⾥加⼀层div,div宽度100%,且设置overflow属性 ⾥嵌套table,且table有滚动条 ① 最外层的table加上宽度、table-layout:fixed;word-break:break-all;(防⽌内层的table内容过长,将外层td撑开) ②在td和第⼆层table之间,加⼀层div;div设置overflow属性,再给内层table的th设置宽度就⾏了,6.隐藏滚动条.classname :: -webkit-scrollbar{display:none;}7.如下图,th在左侧,右侧td,第⼀⾏的td设置了colspan=“8”,使⽤了colspan后,设置列宽(th/td的宽度)不⽣效: 解决办法:添加colgroup属性,col设置列的宽度。(若td设置了colspan,且colgroup设置了col的宽度,但ie下宽度仍不⽣效,记得:table加上样式table-layout : fixed ;)
} 9. 兼容问题:ie9下,表格出现空格以及错位。 如图:第⼀⾏的操作⼈右移了,出现了空格。
解决办法: ⽹上查,这是ie9的⼀个bug, 与
10. tr之间出现空⽩⾏
如图:我在⽤字符串拼接,⽣成表结构的时候,发现渲染出的表结构tr之间有空⾏ var html ='
table tr td { padding: 0px; height: 40px; position: relative; background-clip: padding-box;} 12. 多⾏多列的表头thead固定效果图:
⽔果 | ⼈名 | 玩具 | ||||
---|---|---|---|---|---|---|
苹果 | ⾹蕉 | Jay | Lucy | Nick | ⼩汽车 | 娃娃 |
2个 | 2个 | 2个 | 2个 | 2个 | 2个 | 2个 |
3个 | 3个 | 3个 | 3个 | 3个 | 3个 | 3个 |
4个 | 4个 | 4个 | 4个 | 4个 | 4个 | 4个 |
5个 | 5个 | 5个 | 5个 | 5个 | 5个 | 5个 |
图2:
2023年6月20日发(作者:)
table的td、th的⼀些样式问题(宽度,边框,滚动条,多⾏多列的表头thead固定)1. 给table加边框table{ border-collapse: collapse;
/*表格的边框合并为⼀个单⼀的边框*/}table, table tr th, table tr td {
border:1px solid #ccc;
}还有种傻傻的⽅法:table{ border-top:1px solid #ccc; border-left:1px solid #ccc;
}table tr td, table tr th{ border-right:1px solid #ccc; border-bottom: 1px solid #ccc;
}2.给table的th固定宽度① 设置table的宽度② table设置table-layout : fixed ;③ 设置th宽度
3.给table加滚动条在table外包⼀层div,div设置overflow属性div{ overflow-x: scroll;
} 4.给td加滚动条在td⾥加⼀层div,div宽度100%,且设置overflow属性 ⾥嵌套table,且table有滚动条 ① 最外层的table加上宽度、table-layout:fixed;word-break:break-all;(防⽌内层的table内容过长,将外层td撑开) ②在td和第⼆层table之间,加⼀层div;div设置overflow属性,再给内层table的th设置宽度就⾏了,6.隐藏滚动条.classname :: -webkit-scrollbar{display:none;}7.如下图,th在左侧,右侧td,第⼀⾏的td设置了colspan=“8”,使⽤了colspan后,设置列宽(th/td的宽度)不⽣效: 解决办法:添加colgroup属性,col设置列的宽度。(若td设置了colspan,且colgroup设置了col的宽度,但ie下宽度仍不⽣效,记得:table加上样式table-layout : fixed ;)
} 9. 兼容问题:ie9下,表格出现空格以及错位。 如图:第⼀⾏的操作⼈右移了,出现了空格。
解决办法: ⽹上查,这是ie9的⼀个bug, 与
10. tr之间出现空⽩⾏
如图:我在⽤字符串拼接,⽣成表结构的时候,发现渲染出的表结构tr之间有空⾏ var html ='
table tr td { padding: 0px; height: 40px; position: relative; background-clip: padding-box;} 12. 多⾏多列的表头thead固定效果图:
⽔果 | ⼈名 | 玩具 | ||||
---|---|---|---|---|---|---|
苹果 | ⾹蕉 | Jay | Lucy | Nick | ⼩汽车 | 娃娃 |
2个 | 2个 | 2个 | 2个 | 2个 | 2个 | 2个 |
3个 | 3个 | 3个 | 3个 | 3个 | 3个 | 3个 |
4个 | 4个 | 4个 | 4个 | 4个 | 4个 | 4个 |
5个 | 5个 | 5个 | 5个 | 5个 | 5个 | 5个 |
图2:
发布评论