elementui el-form中el-form-item自定义label

问题描述:

在开发中有时候对表单的label需要加入图标,如下图所示:

实现方法,将自定义代码块中加入属性slot=“label”即可;

下面是代码实现:(仅提供自定义label行,方便大家使用;)

<el-form-item>
    <span slot="label">
      <i class="el-icon-edit"></i>
      活动名称
    </span>
    <el-input v-model="sizeForm.name"></el-input>
  </el-form-item>

 下面为上图完整版实例:

<el-form ref="form" :model="sizeForm" label-width="100px" size="mini">
  <el-form-item>
    <span slot="label">
      <i class="el-icon-edit"></i>
      活动名称
    </span>
    <el-input v-model="sizeForm.name"></el-input>
  </el-form-item>
  <el-form-item label="活动区域">
    <el-select v-model="sizeForm.region" placeholder="请选择活动区域">
      <el-option label="区域一" value="shanghai"></el-option>
      <el-option label="区域二" value="beijing"></el-option>
    </el-select>
  </el-form-item>
  <el-form-item label="活动时间">
    <el-col :span="11">
      <el-date-picker type="date" placeholder="选择日期" v-model="sizeForm.date1" style="width: 100%;"></el-date-picker>
    </el-col>
    <el-col class="line" :span="2">-</el-col>
    <el-col :span="11">
      <el-time-picker placeholder="选择时间" v-model="sizeForm.date2" style="width: 100%;"></el-time-picker>
    </el-col>
  </el-form-item>
  <el-form-item label="活动性质">
    <el-checkbox-group v-model="sizeForm.type">
      <el-checkbox-button label="美食/餐厅线上活动" name="type"></el-checkbox-button>
      <el-checkbox-button label="地推活动" name="type"></el-checkbox-button>
      <el-checkbox-button label="线下主题活动" name="type"></el-checkbox-button>
    </el-checkbox-group>
  </el-form-item>
  <el-form-item label="特殊资源">
    <el-radio-group v-model="sizeForm.resource" size="medium">
      <el-radio border label="线上品牌商赞助"></el-radio>
      <el-radio border label="线下场地免费"></el-radio>
    </el-radio-group>
  </el-form-item>
  <el-form-item size="large">
    <el-button type="primary" @click="onSubmit">立即创建</el-button>
    <el-button>取消</el-button>
  </el-form-item>
</el-form>

js部分省略,需要的可自行补充完整;

vue element-ui 中的 select remote-method 函数中自定义传参icon-default.png?t=LA92https://blog.csdn.net/qq_38909255/article/details/121163730

element-ui tooltip修改背景颜色和箭头颜色icon-default.png?t=LA92https://blog.csdn.net/qq_38909255/article/details/121820696

### 自定义 `el-form-item` 中 Label 的样式或内容 在 Element UI 中,可以通过多种方式来自定义 `el-form-item` 组件中的标签 (Label) 样式或内容。 #### 方法一:通过插槽自定义 Label 内容 Element 提供了具名插槽的方式允许开发者完全控制标签的内容。可以使用 `slot="label"` 来覆盖默认的 label 文本: ```html <el-form :model="form"> <el-form-item> <!-- 使用具名插槽 "label" --> <template slot="label"> <span style="color:red;font-weight:bold;">特殊</span> 用户名 </template> <el-input v-model="form.name"></el-input> </el-form-item> </el-form> ``` 这种方式提供了极大的灵活性,能够嵌入任意 HTML 结构[^1]。 #### 方法二:利用 CSS 类选择器修改样式 如果只需要调整样式的简单情况,可以直接为目标元素添加特定类并应用相应样式规则: ```css /* 定义全局或局部CSS */ .custom-label .el-form-item__label { color: blue; font-size: 18px; } ``` ```html <!-- 应用自定义class到 form item--> <el-form :model="form"> <el-form-item class="custom-label"> <template slot="label">用户名</template> <el-input v-model="form.name"></el-input> </el-form-item> </el-form> ``` 这种方法适用于不需要改变 DOM 结构而只是单纯想要更改外观的情况[^2]。 #### 方法三:动态绑定内联样式 对于更复杂的场景,比如基于某些条件来决定显示效果,则可采用 Vue.js 的特性——动态绑定 inline-style 属性实现按需定制化展示逻辑: ```html <el-form :model="form"> <el-form-item> <template slot="label"> <span :style="{ color: isImportant ? 'red' : '' }">重要程度:</span> </template> <el-select v-model="form.importanceLevel"> <el-option value="high" @click.native="isImportant=true"/> <el-option value="low" @click.native="isImportant=false"/> </el-select> </el-form-item> </el-form> ``` 此方法结合 JavaScript 控制变量的变化从而影响最终渲染出来的界面表现形式[^3]。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

天府之绝

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

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

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

打赏作者

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

抵扣说明:

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

余额充值