当前位置:首页 > 经验 >

table表格样式(怎么用table做表格)

来源:原点资讯(www.yd166.com)时间:2022-10-29 01:00:15作者:YD166手机阅读>>

背景:

在使用layui table展示列表数据的时候,有时候单元格的内容有多行,这个时候需要设置单元格的高度自适应,这种情况下,如果有设置表格的某些列固定(fixed)的话,会造成固定列的样式错乱,排序的时候样式也会错乱,需要做特殊处理。

解决方法:

  1. 在渲染表格数据的时候,根据单元格的内容高度重新计算并设置表格的每一行的高度。
  2. 监听表格的排序事件,在排序事件中根据单元格的内容高度重新计算并设置表格的每一行的高度。

样式错乱效果:

table表格样式,怎么用table做表格(1)

table表格样式,怎么用table做表格(2)

样式正常效果:

table表格样式,怎么用table做表格(3)

table表格样式,怎么用table做表格(4)

源码:

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <title>layui table单元格高度自适应造成固定的表格列样式错乱</title> <link rel="stylesheet" href="../src/css/layui.css"> <style> body { padding: 20px; } /* 设置表格单元格内容自适应 */ .layui-table-cell { height: auto!important; } </style> </head> <body> <script type="text/html" id="toolbarDemo"> <div class="layui-btn-container"></div> </script> <script type="text/html" id="barDemo"></script> <table id="demo" lay-filter="demo"></table> <script src="../src/layui.js" src1="//www.layuicdn.com/layui-v2.5.3/layui.js" charset="utf-8"></script> <script> layui.use(['table'], function () { var table = layui.table, $ = layui.$; // 服务端返回的原始数据(数据中的tagName字段内容有多行) var productListData = { "status": 0, "message": "ok", "total": 5, "data": { "list": [ { "id": 1, "productName": "短袖", "tagName": "服装<br />夏季上衣", "createTime": "2022-07-01 12:30:12", "updateTime": "2022-07-01 12:30:12" }, { "id": 2, "productName": "长袖", "tagName": "服装", "createTime": "2022-07-01 12:30:12", "updateTime": "2022-07-01 12:30:12" }, { "id": 3, "productName": "长裤", "tagName": "男装", "createTime": "2022-07-01 12:30:12", "updateTime": "2022-07-01 12:30:12" }, { "id": 4, "productName": "衬衣", "tagName": "男装<br />夏装", "createTime": "2022-07-01 12:30:12", "updateTime": "2022-07-01 12:30:12" }, { "id": 5, "productName": "电脑", "tagName": "电子产品<br />办公", "createTime": "2022-07-01 12:30:12", "updateTime": "2022-07-01 12:30:12" } ] } }; // 由于是演示程序, 这里直接取出商品数据用于表格渲染 var listData = productListData.data.list; // 表格渲染 window.ins1 = table.render({ elem: '#demo', // url: 'http://localhost/getProductList', // 这里是服务端接口的地址 data: listData, // 直接赋值静态数据。真实数据需要通过请求服务端接口获取, 由于是演示程序, 这里直接使用data字段设置静态数据 limit: 20, toolbar: '#toolbarDemo', cols: [[ { field: 'id', title: 'ID', fixed: "left", sort: true }, // ID列固定左侧 { field: 'productName', title: '商品名称' }, { field: 'tagName', title: '商品标签' }, { field: 'createTime', title: '创建时间', sort: true }, { field: 'updateTime', title: '最近一次更新时间', sort: true } ]], parseData: function (res) { return { "status": res.status, "msg": res.message, "count": res.total, "data": res.data.list }; }, done: function () { // layui表格单元格设置高度自适应后, 设置为fixed的表格列的高度无法自适应的处理 $(".layui-table-main tr").each(function(index, val) { $($(".layui-table-fixed .layui-table-body tbody tr")[index]).height($(val).height()); }); }, error: function (res, msg) { console.log(res, msg) } }); table.on('sort(demo)', function(obj){ // sort 是工具条事件名, demo是table原始容器的属性 // 如果你的表格列表里有设置排序sort, 需要添加一个sort监听事件, 根据单元格内容的高度重新计算表格的行高 $(".layui-table-main tr").each(function(index, val) { $($(".layui-table-fixed .layui-table-body tbody tr")[index]).height($(val).height()); }); }); }); </script> </body> </html>

栏目热文

table怎么设置一行表格的大小(table表格中设置字体大小)

table怎么设置一行表格的大小(table表格中设置字体大小)

功能说明:设置excel的属性:表格的宽度和高度,以及背景色(2红色/3绿色/4蓝色/5黄色)、边框样式(细实线:1,小...

2022-10-29 01:00:05查看全文 >>

table表格线条怎么加上(table去掉表格的横向和竖向边框)

table表格线条怎么加上(table去掉表格的横向和竖向边框)

大部分公司还是需要员工自行整理发票填写报销单,并且打印电子发票后提交给财务才能报销。如果发票多了会很浪费时间,让我们用P...

2022-10-29 01:17:23查看全文 >>

table表格怎么设置(怎么在table表格添加一行)

table表格怎么设置(怎么在table表格添加一行)

数据表也称为模拟运算表,是Excel图表的一种元素,它可以在图表的下方显示数据源中的数据。本文将介绍如何使用Spire....

2022-10-29 00:52:11查看全文 >>

table表格的各种属性(table中什么属性设置表格宽度)

table表格的各种属性(table中什么属性设置表格宽度)

点击右上方红色按钮关注“小郑搞码事”,每天都能学到知识,搞懂一个问题!单纯的table应该比CSS还要老,也就是说在出现...

2022-10-29 00:46:17查看全文 >>

table表格线样式(table表格折叠)

table表格线样式(table表格折叠)

表格table上的斜线,一般用在首行首列上,这个东西大家肯定都不陌生,在excel打印文档时我们时常都能碰到,那么在ht...

2022-10-29 00:39:24查看全文 >>

table怎么快速背下来(怎么把table去重)

table怎么快速背下来(怎么把table去重)

Table 在Excel的菜单版本中以列表形式开始,但在功能区版本中它们变得更加强大。将数据范围转换为表可以扩展功能,然...

2022-10-29 00:38:35查看全文 >>

table表格怎么弄(table表格怎么添加图片)

table表格怎么弄(table表格怎么添加图片)

学习目标掌握MySQL服务中表的操作方法,能够完成表的创建,查看,重命名和删除。DDL之数据表操作(TABLE)在操作数...

2022-10-29 00:55:44查看全文 >>

使用table元素定义表格(table动态添加表格)

使用table元素定义表格(table动态添加表格)

HTML 表格实例:First NameLast NamePointsJillSmith50EveJackson94Jo...

2022-10-29 01:07:01查看全文 >>

华为mate30隔空操作有什么用(华为mate30实用小功能)

华为mate30隔空操作有什么用(华为mate30实用小功能)

【手机中国新闻】9月19日晚,华为Mate 30系列正式亮相,作为华为最新的年度旗舰产品,华为Mate 30系列凭借重构...

2022-10-29 01:10:29查看全文 >>

华为mate30隔空操作有哪些(华为mate30有什么神奇功能)

华为mate30隔空操作有哪些(华为mate30有什么神奇功能)

[PConline 资讯]9月23日,时值秋分,正是吃螃蟹的好时候。但是我们都知道,吃螃蟹时双手肯定会沾满蟹汁,如果这时...

2022-10-29 00:39:23查看全文 >>

文档排行