html display属性 tr,CSS display属性的table表格布局

项目改造中遇到DIV+CSS实现的table,新需求需要在表格使用单元格合并,网上调查返现CSS display:table实现的table表格,没有单元格的属性和样式,经过一番思考,曲折现实了单元格的合并,即采用正行嵌套一个单独的display:table的DIV,然后在嵌套的表格DIV内部通过控制行列数和行列的高度,实现单元格合并。个人建议全新实现使用

一、CSS display属性的表格布局相关属性的解释:

table    此元素会作为块级表格来显示(类似

table-row-group    此元素会作为一个或多个行的分组来显示(类似

)。

table-header-group    此元素会作为一个或多个行的分组来显示(类似 )。

table-footer-group    此元素会作为一个或多个行的分组来显示(类似

)。

table-row    此元素会作为一个表格行显示(类似

)。

table-column-group    此元素会作为一个或多个列的分组来显示(类似

)。

table-column    此元素会作为一个单元格列显示(类似

)

table-cell    此元素会作为一个表格单元格显示(类似

和 )

table-caption    此元素会作为一个表格标题显示(类似

)

二、示例代码

1、普通表格

XML/HTML Code复制内容到剪贴板

html>

display普通表格

.table, .table * {margin: 0 auto; padding: 0;font-size: 14px;font-family: Arial, 宋体, Helvetica, sans-serif;}

.table {display: table; width: 80%; border-collapse: collapse;}

.table-tr {display: table-row; height: 30px;}

.table-th {display: table-cell;font-weight: bold;height: 100%;border: 1px solid gray;text-align: center;vertical-align: middle;background-color:#E5E5E5;}

.table-td {display: table-cell; height: 100%;border: 1px solid gray; text-align: center;vertical-align: middle;}

省份/直辖市

GDP(亿元)

增长率

广东

72812

8.0%

河南

37010

8.3%

江苏

70116

8.5%

运行效果

2、列合并实现表格

实现思路:基于display:table的表格实现,没有

XML/HTML Code复制内容到剪贴板

html>

基于display列合并表格

.table, .table * {margin: 0 auto; padding: 0;font-size: 14px;font-family: Arial, 宋体, Helvetica, sans-serif;}

.table {display: table; width: 80%; border-collapse: collapse;}

.table-tr {display: table-row; height: 30px;}

.table-th {display: table-cell;font-weight: bold;height: 100%;border: 1px solid gray;text-align: center;vertical-align: middle;background-color:#E5E5E5;}

.table-td {display: table-cell; height: 100%;}

.sub-table {width: 100%;height: 100%;display: table;}

.sub-table-tr {display: table-row; height: 100%;}

.sub-table-td {display: table-cell; height: 100%;border: 1px solid gray; text-align: center;vertical-align: middle;}

省份/直辖市

GDP(亿元)

增长率

广东

72812

8.0%

河南

37010

8.3%

江苏

70116

8.5%

各省/直辖市GDP平均增长率

8.26%

运行效果

3、行合并表格

行合并的实现思路:与列合并的实现思路类似,将有单元格合并的列单独嵌套一个display为table的DIV,高度=单行高*单元格合并数目的倍数,同行的其他列同样均单独嵌套DIV,实例代码如下

XML/HTML Code复制内容到剪贴板

html>

基于display的行合并表格

.table, .table * {margin: 0 auto; padding: 0;font-size: 14px;font-family: Arial, 宋体, Helvetica, sans-serif;}

.table {display: table; width: 80%; border-collapse: collapse;}

.table-tr {display: table-row; height: 30px;}

.table-th {display: table-cell;font-weight: bold;height: 100%;border: 1px solid gray;text-align: center;vertical-align: middle;background-color:#E5E5E5;}

.table-td {display: table-cell; height: 100%;}

.sub-table {width: 100%;height: 100%;display: table;}

.sub-table-tr {display: table-row; height: 100%;}

.sub-table-td {display: table-cell; height: 100%;border: 1px solid gray; text-align: center;vertical-align: middle;}

省份/直辖市

GDP(亿元)

增长率

广东

72812

8.0%

河南

江苏

37010

70116

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值