ant design table样式修改合集

article/2025/9/14 12:12:55

目录

1. 修改列头样式

改变列头文字颜色

改变列头背景颜色

2. 修改行样式

 改变行文字颜色

隔行换色

3.列头居中,列居左/右

4.列表自动滚动

5. 列头超出省略并可以点击全显示

6.Table 点击某一行时改变选中行的边框颜色

7.Table 移入某一行时改变行的颜色

常见问题合集:

table的列数据排序,sorter无效不起作用?



1. 修改列头样式

  • 改变列头文字颜色

  代码部分:

  index.js:

import styles from '../index.less';

index.less:

:global(.ant-table-thead> tr >th){color: royalblue;text-align: center;}

 


  •  改变列头背景颜色

:global {
//info-maintain-wrap设置的是根className.info-maintain-wrap {//下面是重点.ant-table-thead{background-color: #10b3b3;}
}
}

注意:上面的方法,修改了组件的默认样式,但是也会修改全局的

为了避免污染全局样式,只改变单个页面的样式参考下面方法:

https://blog.csdn.net/Akukudeteng/article/details/121163462

2. 修改行样式

  •  改变行文字颜色

onRow是table提供的属性,不知道的小伙伴可以去看下官方文档哦

onRow={(record, index) => {return {onClick: (e) => {let tr = e.target.parentNode; //拿到tr标签if (tr.nodeName !== 'TR') {tr = tr.parentNode}//给所有tr标签设置颜色for (let i = 0; i < tr.parentNode.childNodes.length; i++) {tr.parentNode.childNodes[i].style.color = 'white'}//单独设置被选中的标签颜色tr.style.color = "rgb(115,201,236)";},};
}}

  • 隔行换色

 js:

<Table......rowClassName={rowClassName} //表格行的类名
/>
const rowClassName = (record, index) => {let className = 'lightitem';if (index % 2 === 1) className = 'darkitem';return className;}

less:

:global {.lightitem {&>td {background-color: #F4F4F4;}}.darkitem {&>td {background-color: white;}}}

3.列头居中,列居左/右

index.js

      columns: [{title: '检验项目',dataIndex: 'CINSPECTION_ITEM_NAME',key: 'CINSPECTION_ITEM_NAME',align: 'left',//左对齐},.....]

index.less:

.content{:global{.ant-table-container table > thead > tr:first-child th:first-child, th:last-child {border-top-left-radius: 2px;text-align: center!important;  //列头居中}}}}

4.列表自动滚动

<divonMouseOver={() => {clearInterval(timer);}}onMouseOut={() => {InitialScroll(productTop);}}><Table/></div>
 .....const [productTop, setProductTop] = useState([]).....useEffect(() => {InitialScroll(productTop);return () => {clearInterval(timer);};}, [productTop])// 开启定时器const InitialScroll = (data) => {let v = document.getElementsByClassName('ant-table-body')[0];if (data.length > Number(10) && true) {// 只有当大于10条数据的时候 才会看起滚动let time = setInterval(() => {v.scrollTop += Number(1.5);if (Math.ceil(v.scrollTop) >= parseFloat(v.scrollHeight - v.clientHeight)) {v.scrollTop = 0;// setTimeout(() => { v.scrollTop = 0 }, 1000)}}, Number(100));setTimer(time); // 定时器保存变量 利于停止}};

5. 列头超出省略并可以点击全显示

less:th:not(.ant-table-row-cell-ellipsis) div {max-width: 80px;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;cursor: pointer;}
js:设置点击全显数据//列头超出省略,点击显示全文本let Ement =document.getElementsByClassName('ant-table-column-title')for(let i =0;i<Ement.length;i++){Ement[i].setAttribute('title',  Ement[i].innerHTML)}

6.Table 点击某一行时改变选中行的边框颜色

思路:通过Table的onRow 获取到点击行的Index,然后js:
...
<Table...rowClassName={rowClassName}onRow={onRow}/>
...const onRow = (record, index) => {return {onClick: e => {setIndex(index)},}}const rowClassName = (record, index) => {let className = '';if (index === Index) {//rowClassNam的index 和 选中行的Index一致的话,使用Rowstyles样式className = 'Rowstyles';} else {className = 'lightitem';if (index % 2 === 1) className = 'darkitem';}return className;}less::global {.Rowstyles {//这里设置行的上、下边框td {border-top: 2px solid RGB(45, 170, 172);border-bottom: 2px solid RGB(45, 170, 172);}//行的左边框td:first-child {border-left: 2px solid RGB(45, 170, 172);}//行的右边框td:last-child {border-right: 2px solid RGB(45, 170, 172);}}

7.Table 移入某一行时改变行的颜色

less:.ant-table-thead>tr.ant-table-row-hover:not(.ant-table-expanded-row):not(.ant-table-row-selected)>td,.ant-table-tbody>tr.ant-table-row-hover:not(.ant-table-expanded-row):not(.ant-table-row-selected)>td,.ant-table-thead>tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected)>td,.ant-table-tbody>tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected)>td {background: RGB(208, 228, 234);}

常见问题合集:

  • table的列数据排序,sorter无效不起作用?

解决:

sorter函数根据返回值来进行排序,返回值为>0时进行倒叙排序,返回值为<0时为正序排序!修改如下就正常了:

sorter:    (a, b) => a.NexItemName > b.NexItemName? 1 : -1


参考了:

Antd 表格样式修改 - 码农教程


http://chatgpt.dhexx.cn/article/CuIAkm5V.shtml

相关文章

Element-UI:el-table样式修改

以下样式代码在less环境下生效&#xff0c;最终样式如下。 样式代码&#xff0c; /*修改table 表体的背景颜色和文字颜色*/ /deep/ .el-table {background-color: transparent;th,td {background-color: transparent;}.el-table__expanded-cell {background-color: transp…

ElementUI table 样式修改

一、概述 element-ui table 默认是白色背景&#xff0c;现在需要修改为黑色背景&#xff0c;白色文字。 二、代码实现 css样式 <style>/*修改table 的背景颜色和文字颜色*/.el-table td, .el-table th.is-leaf,.el-table--border, .el-table--group{border-color: black;…

table 样式美化

1. 单像素边框CSS表格 这是一个很常用的表格样式。 源代码: 1 <!-- CSS goes in the document HEAD or added to your external stylesheet -->2 <style type="text/css">3 table.gridtable {4 font-family: verdana,arial,sans-serif;5 font…

el-table 样式自定义

1.el-table 样式自定义 效果图: // tableRowClassName 通过值判断是否添加加class, // header-cell-style 头部样式 // row-style 行的样式 // cell-style 每个item 的样式 <el-table style"margin-bottom: 20px" :data"pmPopList" :row-class-name&q…

HTML table样式

如果想在网页中建一个如下table表格应该怎么做呢&#xff1f; 首先建一个表<table> <table>/*table标签就是建一个表格*/<tr>/*tr标签就是table row&#xff0c;即为表格中的一行*/<th>学号</th>/*th标签即table head&#xff0c;就是表头*/<…

Vue表格table样式

新入职的公司让我学习下Vue&#xff0c;以前没怎么学过&#xff0c;最近开始学习&#xff0c;记录下每天学习的内容&#xff0c;借鉴了很多前辈们的资料&#xff0c;如有冒犯&#xff0c;还请原谅。 开始我做的是动态表格&#xff0c;但是发现不会调整宽度&#xff0c;于是就改…

html中table美化,漂亮的css table样式

工作中发邮件通知人员样式总是一个麻烦事,工作的严肃性不能让邮件样式太花哨,但是又不能太简陋, 所以找了下面的table样式和大家分享。 效果如下图所示: 漂亮CSS Tables-幸凡学习网 body {font: normal 11px auto "Trebuchet MS", Verdana, Arial, Helvetica, sans-…

关于bootstrap--表格(table的各种样式)

1、table-striped&#xff1a;斑马线表格 2、table-bordered&#xff1a;带边框的表格 3、table-hover&#xff1a;鼠标悬停高亮的表格 4、table-condensed&#xff1a;紧凑型表格(单元格的内距由8px调至5px。) 5、table-responsive&#xff1a;响应式表格(当你的浏览器可视区…

Android MotionEvent理解

Java层MotionEvent对应C层MotionEvent Java层MotionEvent类下面的mNativePtr指向C层MotionEvent   C层MotionEvent成员变量如下 class MotionEvent : public InputEvent { ………… protected:int32_t mAction; //事件的行为&#xff0c;例如Down,Move,Up&#xff0c;如果是…

【Android 事件分发】MotionEvent.ACTION_DOWN 按下事件分发流程( Activity | ViewGroup | View )

Android 事件分发 系列文章目录 【Android 事件分发】事件分发源码分析 ( 驱动层通过中断传递事件 | WindowManagerService 向 View 层传递事件 ) 【Android 事件分发】事件分发源码分析 ( Activity 中各层级的事件传递 | Activity -&#xff1e; PhoneWindow -&#xff1e; De…

Android MotionEvent详解

在前边几篇博文中&#xff08;《图解Android事件传递之ViewGroup篇》&#xff0c;《图解Android事件传递之View篇》&#xff09;&#xff0c;我们已经了解了android触摸事件传递机制&#xff0c;接着我们再来研究一下与触摸事件传递相关的几个比较重要的类&#xff0c;比如Moti…

[Android Input系统]MotionEvent的序列化传送

这里从云游戏的触控操作看起&#xff0c; PC端的客户端支持按键和鼠标滑动操作&#xff0c;手机上的云游戏客户端则是和手机游戏一样的touch触控&#xff0c;客户端的touch操作是怎样处理给服务端的呢&#xff0c;猜测是把touch操作“实时”的传送给了服务器&#xff0c;Androi…

Android MotionEvent 坐标获取

Android MotionEvent中getX()与getRawX()都是获取屏幕坐标&#xff08;横&#xff09;&#xff0c;但二者又有区别 getX() &#xff1a; 是获取相对当前控件&#xff08;View&#xff09;的坐标 getRawX() &#xff1a; 是获取相对显示屏幕左上角的坐标 演示…

Android事件拦截(一)——触摸事件MotionEvent分析

&#xff08;1&#xff09;MotionEvent相关动作事件 //按下动作 public static final int ACTION_DOWN 0; //抬起动作 public static final int ACTION_UP 1; //移动动作 public static final int ACTION_MOVE 2; //触摸取消动作 public static final int ACTION_CANCEL 3…

Android MotionEvent

1.MotionEvent Android将所有的输入事件都放在了 MotionEvent 中&#xff0c;MotionEvent 负责集中处理所有类型设备的输入事件&#xff0c;包括单点触控、手势、多点触控、触控笔、鼠标、键盘、操纵杆、游戏控制器等。 事件类型&#xff1a; MotionEvent的事件类型主要有&…

[Android]视图的控触操作-MotionEvent

引入 对屏幕的任何操作&#xff0c;系统都会创建一个触摸事件的对象MotionEvent来应对这个操作。当点击手机屏幕的某一个视图时&#xff0c;最先感应到的是屏幕&#xff0c;因为Activity系统是分层的结构&#xff0c;底层是一些驱动&#xff0c;所以驱动就会得到信息并且把信息…

MotionEvent 详解

Android MotionEvent详解: https://www.jianshu.com/p/0c863bbde8eb https://www.diycode.cc/topics/392 Android 将所有的输入事件都放在了 MotionEvent 中&#xff0c;随着安卓的不断发展壮大&#xff0c;MotionEvent 也开始变得越来越复杂&#xff0c;下面是我自己整理的 …

MotionLayout MotionScene 动画从未如此简单!

话不多说先上图。 这是要做的最终效果。通过这些动画我们将了解MotionLayout的使用方法和常用的一些属性。 第一步&#xff1a;添加依赖 如果要使用MotionLayout请将ConstraintLayout更新到2.0及以上。在build.gradle文件中添加依赖 如果使用的是AndroidX&#xff0c;添加依赖…

Android的MotionEvent和事件处理

之前几篇文章我们讲解了自定义View和ViewGroup, 今天我们来看下View和ViewGroup常见的触摸事件和按键事件。 MotionEvent MotionEvent对象是与用户触摸相关的时间序列&#xff0c;该序列从用户首次触摸屏幕开始&#xff0c;经历手指在屏幕表面的任何移动&#xff0c;直到手指…

MotionEvent详解

Android MotionEvent 详解&#xff0c;之前用了两篇文章 事件分发机制原理 和 事件分发机制详解 来讲解事件分发&#xff0c;而作为事件分发主角之一的 MotionEvent 并没有过多的说明&#xff0c;本文就带大家了解 MotionEvent 的相关内容&#xff0c;简要介绍触摸事件&#xf…