element el-table组件修改表格表头和某个单元格背景色

49 篇文章 0 订阅

element el-table组件修改表格表头和某个单元格背景色

在这里插入图片描述

<template>
  <div>
    <el-table
      :data="tableData"
      style="width: 100%"
      :cell-style="cellStyle"
      :header-cell-style="headerCellStyle"
    >
      <el-table-column prop="city" label="省份" align="center">
      </el-table-column>
      <el-table-column prop="address" label="核算中心" align="center">
      </el-table-column>
      <!-- 合计 -->
      <el-table-column :label="item.label" align="center" v-for="(item,index) in tableColumn" :key="index">
        <el-table-column prop="city" label="准点单数" align="center">
        </el-table-column>
        <el-table-column prop="address" label="总单数" align="center">
        </el-table-column>
        <el-table-column :prop="item.num" label="准点率" align="center">
        </el-table-column>
      </el-table-column>
      <!-- 日期1 -->
      <!-- <el-table-column label="3月1号" align="center">
        <el-table-column prop="city" label="准点单数" align="center">
        </el-table-column>
        <el-table-column prop="address" label="总单数" align="center">
        </el-table-column>
        <el-table-column prop="num1" label="准点率" align="center">
        </el-table-column>
      </el-table-column> -->
      <!-- 日期2 -->
      <!-- <el-table-column label="3月2号" align="center">
        <el-table-column prop="city" label="准点单数" align="center">
        </el-table-column>
        <el-table-column prop="address" label="总单数" align="center">
        </el-table-column>
        <el-table-column prop="num2" label="准点率" align="center">
        </el-table-column>
      </el-table-column> -->
    </el-table>
  </div>
</template>

<script>
export default {
  name: "Tables",
  components: {},
  data() {
    return {
      tableData: [
        {
          city: "普陀区",
          address: "上海市",
          num: "95.5%",
          nums: "60.8%",
          numss: "67.3%",
          numsss: "90%"
        },
        {
          city: "普陀区",
          address: "上海市",
          num: "60.3%",
          nums: "90.8%",
          numss: "67.3%",
          numsss: "70%"
        },
      ],
      tableColumn:[
        {
          label:'合计',
          num: "num",
        },
        {
          label:'3月1号',
          num: "nums",
        },
        {
          label:'3月2号',
          num: "numss",
        },
        {
          label:'3月3号',
          num: "numsss",
        }
      ]
    };
  },
  mounted() {},
  methods: {
    headerCellStyle({ row, column, rowIndex, columnIndex }) {
      // console.log(row, column, rowIndex, columnIndex);
      let rowBackground = {};
      if (
        (rowIndex == 0 && columnIndex == 2) ||
        (rowIndex == 1 && columnIndex == 2) ||
        (rowIndex == 1 && columnIndex == 1) ||
        (rowIndex == 1 && columnIndex == 0)
      ) {
        rowBackground.background = "#00f";
      }
      return rowBackground;
    },
    cellStyle({ row, column, rowIndex, columnIndex }) {
      // console.log(row, column, rowIndex, columnIndex,this.cmpp(row.num,'90%'));
      let rowBackground = {};
      if (column.label == "准点率") {
        if (this.cmpp(row[column.property], "90%")) {
          rowBackground.background = "#f00";
        } else {
          rowBackground.background = "#ff0";
        }
      }
      return rowBackground;
    },
    cmpp(a, b) {
      return Number(a.replace("%", "")) < Number(b.replace("%", ""));
    },
  },
};
</script>
<style scoped></style>

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用 `el-table` 组件的 `header-cell-style` 属性来设置表头单元的样式,其中可以包含背景属性,例如: ``` <template> <el-table :data="data" header-cell-style="background-color: red; color: white"> <!-- 表格列定义 --> </el-table> </template> ``` 您也可以使用行内样式,例如: ``` <template> <el-table :data="data"> <el-table-column prop="name" label="姓名" style="background-color: red; color: white"></el-table-column> <!-- 其他列定义 --> </el-table> </template> ``` 也可以使用样式类,例如: ```css .table-header { background-color: red; color: white; } <template> <el-table :data="data" header-cell-class-name="table-header"> <!-- 表格列定义 --> </el-table> </template> ``` 请注意,这些方法都是覆盖式修改,因此如果您需要保留原有的样式,则需要将原有的样式复制到新的样式中。 ### 回答2: 要修改el-table表头背景,可以使用以下方法: 1. 使用scoped属性自定义样式。 可以在使用el-table组件中,添加一个style标签,并使用scoped属性来限定样式只会应用在当前组件中。然后通过设置表头元素的背景修改表头的样式。例如: ```html <template> <div> <style lang="scss" scoped> .el-table__header { background-color: #ff0000; // 设置表头背景为红 } </style> <el-table :data="tableData"> <!-- 表头表格内容省略 --> </el-table> </div> </template> ``` 2. 使用自定义样式类名。 el-table组件提供了一个header-cell-class-name属性,可以用来设置表头单元的自定义样式类名。通过定义一个自定义样式类,然后将该样式类名传给header-cell-class-name属性,来改变表头的样式。例如: ```html <template> <div> <el-table :data="tableData" :header-cell-class-name="headerCellClassName"> <!-- 表头表格内容省略 --> </el-table> </div> </template> <script> export default { methods: { headerCellClassName({ column }) { if (column.property === 'name') { // 假设name列需要修改样式 return 'custom-header-class'; // 自定义样式类名 } } } }; </script> <style lang="scss"> .custom-header-class { background-color: #00ff00; // 设置表头背景为绿 } </style> ``` 通过以上两种方法,我们可以修改el-table表头背景。 ### 回答3: 要修改el-table表头背景,可以通过以下两种方式进行操作。 1. 使用CSS样式:可以通过调整表头的CSS样式来修改背景。在el-table组件中,表头通常具有一个类名为"el-table__header"的元素,可以使用这个类名对表头进行样式修改。可以通过以下步骤来修改背景: - 在你的CSS文件或者style标签中,添加一个样式规则,选择器为".el-table__header"。 - 在样式规则中,添加"background-color"属性,并设置为你想要的颜值。例如:background-color: #ff0000; 表示设置背景为红。 2. 使用element-ui提供的配置项:在el-table组件中,有一个名为"header-background-color"的配置属性,可以通过设置这个属性来修改表头背景。只需要在el-table标签上添加"header-background-color"属性,并设置为你想要的颜值即可。例如:<el-table header-background-color="#ff0000"> 表示设置表头背景为红。 以上两种方式都可以达到修改el-table表头背景的效果,选择其中一种适合你的方式进行操作即可。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值