修改 elementUI 中 el-form 表单组件的星号位置

此方法并不局限于星号的处理,也可以用于其它样式的处理

首先通过F12的控制台知道element的表单星号是通过伪类控制的,那么问题就简单了。
在这里插入图片描述

方法有多种
比方说关闭element原生的星号显示,自己做一个星号标签
比方说用deep来作于标签,修改属性
等等

如果说我的星号并不是一直显示,而是要根据某些表单的字段的值的改变而改变是否展示星号时,那么上述方法就要额外的处理自己的标签,太过繁琐,量太大了

我的方法
在vue的main.js中引入一个公共样式

import Vue from 'vue'

import Cookies from 'js-cookie'

import Element from 'element-ui'
import './assets/styles/my-element.scss'  //此处

然后根据路径创建好my-element.scss文件
在顶部引入element的样式文件
element-ui/packages/theme-chalk/src/index
此处的路径你可以通过node_modules下找到

$--color-danger: #ff4949;
//可以通过路径看到element原生样式
@import "~element-ui/packages/theme-chalk/src/index"

@include b(form-item) {
  @include when(required) {
    @include pseudo('not(.is-no-asterisk)') {

      &>.el-form-item__label:after,
      & .el-form-item__label-wrap>.el-form-item__label:after {
        content: '*';
        color: $--color-danger;
        margin-left: 4px;
      }
      
      &>.el-form-item__label:before,
      & .el-form-item__label-wrap>.el-form-item__label:before {
        display: none !important;
      }

    }
  }
}

after伪类就是我想要的,在文本后面添加星号。而before是element原生的则给他隐藏。这样,就无需做其它的额外操作,上述的特殊情况下的星号的显示与隐藏也用额外处理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

泰日天

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

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

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

打赏作者

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

抵扣说明:

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

余额充值