elementui表格单行高亮用法及高亮样式无效问题解决

本文介绍了如何在ElementUI的数据表格中实现指定行高亮,并解决了因scoped导致的样式不生效问题。通过动态绑定`:row-class-name`属性,结合方法`tableRowClassName`实现第一行高亮。当遇到样式不生效的情况,可以通过在样式中添加`/deep/`选择器来强制修改默认样式,使得高亮效果成功显示。
摘要由CSDN通过智能技术生成

element table 数据表格指定行高亮写法

table写法

 <el-table
           :row-class-name="tableRowClassName"
           >
</el-table>

重点:数据表格上添加动态绑定样式,:row-class-name="tableRowClassName"

method中添加切换样式方法

tableRowClassName({row, rowIndex}) {
    if (rowIndex === 0) {
        return 'highlight-row';
    }
    return '';
},

在这里可以实现高亮算法,我这里是指定了数据表格中的第一行高亮,前面数据表格的写法上就是在这里动态绑定的样式。所以还差一个高亮样式,在

<style scoped>
    .el-table .highlight-row {
        background: #cae3f9;
    }
</style>

到这里,一个数据表格指定行的高亮,就已经实现了。

高亮样式不生效问题解决办法

不过上面的代码,是没法实现高亮的,因为 scoped 导致的样式不生效。

粗暴点的解决办法是直接删掉 scped ,但是会导致样式污染,简单点说就是会导致这个样式变成全局的,其他用到这个样式的地方都可能会被修改。

所以 scoped删不得,在样式中添加 /deep/ ,强制修改默认样式,让你定义的高亮样式生效。

把样式修改如下:

<style scoped>
    .el-table /deep/ .highlight-row {
        background: #cae3f9;
    }
</style>

保存刷新页面,解决问题。

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值