Vue3 + Element Plus 中修改表格当前选中行的颜色

在 Element Plus 中修改表格当前选中行的颜色,可以通过以下步骤实现:

1. 启用当前行高亮

el-table 组件上添加 highlight-current-row 属性以启用当前行高亮:

html

复制

下载

运行

复制代码
<el-table highlight-current-row>
  <!-- 表格内容 -->
</el-table>

2. 自定义选中行样式

在 CSS 中覆盖默认的高亮样式(支持全局或局部作用域):

css

复制

下载

复制代码
/* 修改选中行背景色 */
.el-table__body tr.current-row>td {
  background-color: #f3d8e5 !important; /* 自定义颜色 */
}

/* 可选:修改悬停颜色 */
.el-table__body tr.hover-row>td {
  background-color: #e1f0ff !important;
}

3. 作用域控制(可选)

若需限定样式范围,给表格添加自定义类名:

html

复制

下载

运行

复制代码
<el-table class="custom-table" highlight-current-row>
  <!-- 表格内容 -->
</el-table>

css

复制

下载

复制代码
.custom-table .el-table__body tr.current-row>td {
  background-color: #f3d8e5 !important;
}

完整示例

vue

复制

下载

复制代码
<template>
  <el-table 
    :data="tableData" 
    highlight-current-row 
    class="custom-table"
    @current-change="handleCurrentChange"
  >
    <el-table-column prop="name" label="Name"></el-table-column>
    <el-table-column prop="age" label="Age"></el-table-column>
  </el-table>
</template>

<style scoped>
/* 深度穿透(若使用 scoped) */
:deep(.custom-table .el-table__body tr.current-row>td) {
  background-color: #f3d8e5 !important;
}
/* 悬停效果 */
:deep(.custom-table .el-table__body tr.hover-row>td) {
  background-color: #e1f0ff !important;
}
</style>

说明

  • !important 用于覆盖默认样式优先级

  • 使用 :deep() 穿透 scoped 样式限制(Vue 3)

  • 颜色值可根据需求替换为十六进制、RGB 或 CSS 变量

如果需要更复杂的效果(如渐变色、边框等),可以继续扩展相关 CSS 属性。

相关推荐
京东零售技术1 分钟前
京东小程序JS API仓颉改造实践
前端
老A技术联盟11 分钟前
从小白入门,基于Cursor开发一个前端小程序之Cursor 编程实践与案例分析
前端·小程序
风铃喵游14 分钟前
构建引擎: 打造小程序编译器
前端·小程序·架构
sunbyte19 分钟前
50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | ThemeClock(主题时钟)
前端·javascript·css·vue.js·前端框架·tailwindcss
小飞悟28 分钟前
🎯 什么是模块化?CommonJS 和 ES6 Modules 到底有什么区别?小白也能看懂
前端·javascript·设计
浏览器API调用工程师_Taylor28 分钟前
AOP魔法:一招实现登录弹窗的全局拦截与动态处理
前端·javascript·vue.js
FogLetter29 分钟前
初识图片懒加载:让网页像"懒人"一样聪明加载
前端·javascript
微客鸟窝31 分钟前
一文搞懂NVM管理Node.js:从安装到实战全攻略
前端
归于尽31 分钟前
Cookie、Session、JWT 的前世今生
前端
程序员辉哥32 分钟前
学会在Cursor中使用Rules生成代码后可以躺平了吗?
前端·后端