Element Plus表格中插入颜色块及固定列变色解决方案
作者:交互手记时间:2026-10-31 09:51:52浏览:298
本文介绍如何在Element Plus表格中通过插入颜色块显示数据状态,并解决使用row-class-name自定义行样式时固定列颜色不同步的问题。通过定位.el-table-fixed-column类并覆盖背景色,实现左右固定列与内容列样式一致,提升表格美观度。
在Element Plus表格中插入颜色块以直观显示数据状态

DOM结构部分:
<el-table-column label="是否异常">
<template slot-scope="scope">
<div class="dcs_sf_red" v-if="scope.row.sfyc == 0"></div>
<div class="dcs_sf_green" v-if="scope.row.sfyc == 1"></div>
</template>
</el-table-column>数据定义部分:
data [
{
date: '00:00',
mode: '固定模式',
jhz: 120,
sfyc: 0,
sjz: 120,
sfxy: 1,
fkz: 110,
cgfs: 1,
}]CSS样式部分:
.dcs_sf_red{
margin-left: 30%;
width: 6px;
height: 6px;
border-radius: 50%;
background-color: #FE685D;
}
.dcs_sf_green{
margin-left: 30%;
width: 6px;
height: 6px;
border-radius: 50%;
background-color: #5DFE96;
}Element Plus表格固定列颜色同步解决方案
前言:某些行需要改变背景颜色,因此我们使用了row-class-name方法。然而,发现固定列的颜色并未随之改变。
<el-table :row-class-name="tableRowClassName">xxx</el-table>
const tableRowClassName = (value) => {
if (JSON.stringify(row.stopApplyType) != 'null') {
console.log('停发')
return 'error-row'
} else {
return ''
}
}
<style>
.el-table .error-row {
--el-table-tr-bg-color: var(--el-color-error-light-9);
}
</style>
这种情况视觉效果不佳,因此我们检查了固定列的CSS绑定的class。随后在app.vue中添加以下代码:.el-table-fixed-column--left 用于处理左侧固定列,.el-table-fixed-column--right 用于处理右侧固定列。
//红色的
.el-table .error-row {
--el-table-tr-bg-color: var(--el-color-error-light-9);
}
.el-table .error-row .el-table-fixed-column--left {
background-color: #fef0f0;
}
.el-table .error-row .el-table-fixed-column--right {
background-color: #fef0f0;
}
这样做之后,表格外观更加美观,问题得到解决!
到此这篇关于Element Plus表格中插入颜色块显示数据状态的文章就介绍到这了,更多相关Element Plus表格内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!
作者最新文章
JS怎么实现页面强制刷新
2026-11-05 14:53:38
点击JS链接直接运行不下载?前端实现.js文件强制下载的三种方法
2026-11-05 12:12:23
怎么封装一个通用的JS创建元素辅助函数
2026-11-05 11:41:41
Swiper.js 怎么监听滑动结束并获取当前索引
2026-11-05 10:57:15
HTML、CSS和JS的关系:Web前端三件套怎么协作
2026-11-04 15:41:40
