Element-ui中 实现多选表格(Table)增加 ‘全选’ 字样

本文展示了如何在Element-UI 2.x版本的多选表格中添加'全选'修饰语。通过CSS的`:after`伪元素实现,在`el-table-column`的`selection`类型列中增加定制内容,实现全选文字显示。示例代码中包含了一个基本的表格配置,并提供了样式修改方法。
摘要由CSDN通过智能技术生成

本文 Element-ui 版本 2.x

需求

如下图所示,需要给多选表格添加‘全选’修饰语。
在这里插入图片描述

方法

在 el-table-column 中设置 label 属性并不起作用,因此 ‘全选’ 二字需使用 CSS 来实现。
示例完整代码如下:

<template>
  <div class="test">
    <el-table
      ref="multipleTable"
      :data="tableData"
      :header-cell-style="{background:'#eef1f6',color:'#606266'}"
      size="mini"
      border
      stripe
      style="width: 50%"
      @selection-change="handleSelectionChange">
      <el-table-column align="center" type="selection" width="80"></el-table-column>
      <el-table-column align="center" label="日期" show-overflow-tooltip>
        <template slot-scope="scope">
          {{ scope.row.date }}
        </template>
      </el-table-column>
      <el-table-column align="center" prop="name" label="姓名" show-overflow-tooltip></el-table-column>
      <el-table-column align="center" prop="address" label="地址" width="450"></el-table-column>
    </el-table>
  </div>
</template>

<script>
export default {
  data() {
    return {
      tableData: [
        {
          date: '2016-05-03',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄'
        },{
          date: '2016-05-02',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄'
        },{
          date: '2016-05-04',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄'
        },{
          date: '2016-05-01',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄'
        },{
          date: '2016-05-08',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄'
        },{
          date: '2016-05-06',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄'
        },{
          date: '2016-05-07',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄'
        }
      ],
      multipleSelection: []
    }
  },
  methods: {
    handleSelectionChange(val) {
      this.multipleSelection = val;
    }
  }
}
</script>

<style lang="stylus" scoped>
.test{
  ::v-deep .el-table__header .el-table-column--selection .cell .el-checkbox:after {
    color: #606266;
    content: "全选";
    font-size: 12px;
    margin-left: 2px;
    font-weight: bold;
  }
}
</style>

在这里插入图片描述

延伸

CSS中 :after 与 ::after 的区别 :

  • 都是伪元素,和 :hover :active 等伪类不一样;
  • :before :after 伪元素是在CSS2中提出来的,所以兼容了 IE8;
  • ::before ::after 是CSS3中的写法,为了将 伪类 和 伪元素 区分开,但平时为了兼容性,还是会用一个冒号的写法;
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

明天也要努力

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值