当前位置: 首页 > article >正文

[element-ui]根据 el-table的某一列值大小设置该列背景颜色宽度

效果展示:

代码展示:

<template>
  <el-table :data="tableData" style="width: 100%" :cell-style="cellStyle">
    <el-table-column prop="name" label="姓名" >
    </el-table-column>
    <el-table-column prop="value" label="数值" >
    </el-table-column>
  </el-table>
</template>

<script>
export default {
  data() {
    return {
      tableData: [
        {name:'张三', value: 10 },
        {name:'李四', value: 8 },
        {name:'王五', value: 6 }
      ]
    };
  },
  methods: {
    cellStyle({ row, column, rowIndex, columnIndex }) {
      if(column.property == 'value'){
         // 计算最大值
          const maxValue = Math.max(...this.tableData.map(item => item.value));
          // 计算当前值占最大值的比例
          let ratio = row.value / maxValue;
          // 返回样式对象,设置背景色的宽度
          return {
            background: `linear-gradient( to right , green ${ratio * 100}%, transparent ${ratio * 100}%)`, // 设置背景颜色
            color: '#fff'
          };
        }
    }
  }
};
</script>

注意:在 CSS 中,`background Size` 属性是用来调整背景图像的尺寸的,而不是用来设置背景颜色填充的宽度。所以是上面的代码使用了 `linear- gradient` 函数来创建一个从左到右的渐变,其中绿色部分根据 `ratio` 的值来决定宽度(以百分比表示),剩余部分则是透明的。这样,您就可以根据 `value ` 的值动态地改变背景绿色的填充宽度了。


http://www.kler.cn/a/401034.html

相关文章:

  • 每日OJ题_牛客_天使果冻_递推_C++_Java
  • 第十六届蓝桥杯模拟赛(第一期)-c++/c
  • HTML and CSS Support HTML 和 CSS 支持
  • SpringBoot中Maven的定义及国内源配置教程,实现自动获取Jar包
  • 使用Python编写一个简单的网页爬虫,从网站抓取标题和内容。
  • ChromeDriver驱动下载地址更新(保持最新最全)
  • 细说STM32单片机DMA中断收发RTC实时时间并改善其鲁棒性的方法
  • 《Python网络安全项目实战》项目6 编写密码工具程序_练习题(1)
  • 【大模型UI\多模型回复UI】
  • 【LeetCode】每日一题 2024_11_14 统计好节点的数目(图/树的 DFS)
  • 计算机网络-MSTP工作原理
  • 学习QT第二天
  • RocketMQ 消费队列的写入跟commit log的写入是否同步进行的
  • C++builder中的人工智能(27):如何将 GPT-3 API 集成到 C++ 中
  • 全面掌握Spring Boot异常处理:策略与实践
  • LeetCode77:组合(剪枝操作)
  • prop校验,prop和data区别
  • 数组相关的面试题
  • 基于Java Springboot图书借阅系统
  • 【进阶系列】正则表达式 #匹配
  • 探寻优质的 PostgreSQL 中级认证专家学习机构
  • DNS域名解析服务器--RHCE
  • 使用SaaS化的Aurora应用快速搭建私人ChatGPT助手
  • Deep Fake Detection (DFD) Entire Original Dataset数据集下载
  • 11.18 机器学习-线性回归(重点)-最小二乘法
  • (二)PyTorch简要教学