vueVue-element-admin 学习之路

Vue .el-switch开关样式修改

2020-01-03  本文已影响0人  璃小灯吖

相信很多人都会有这样的需求



但是自从Element UI 弃用了on-text和off-text 以后,怎么把文字放在开关内显示呢,这里提供一种解决方案。
关于el-switch的官方文档

从文档中我们可以看到,现在想要让文字显示对应开关的操作只能用 active-text 和 inactive-text 。
<el-switch 
  v-model="value1" 
  active-text="是" 
  inactive-color="#BFBFBF" //因为用的框架active-color已经有主题色了所以这里只设置inactive的颜色,为了让文字显示的更明显。
  inactive-text="否" 
  active-value="1" 
  inactive-value="0" 
  @change="test" />

在styles中新建一个switch.scss的样式文件,并在index中引入。
通过改变文字的位置,做出这种好像是在开关上面显示文字的效果。

.el-switch__label {
  position: absolute;
  display: none;
  font-size: 11px !important;
  color: #fff!important;
}
.el-switch__label *{
  font-size: 11px !important;
}
/*打开时文字位置设置*/
.el-switch__label--right {
  z-index: 1;
  right: -10px; // 这里是重点
  top: 0.5px;
}
/*关闭时文字位置设置*/
.el-switch__label--left {
  z-index: 1;
  left: 23px; // 这里是重点
  top: 0.5px;
}
/*显示文字*/
.el-switch__label.is-active {
  display: block;
}
.el-switch__core {
  width: 45px;
  height: 22px;
  border: 2px solid #DCDFE6;
  border-radius: 13px;
}

至此大功告成了,觉得对你有帮助的话,不妨随手点个赞再走吖~

上一篇下一篇

猜你喜欢

热点阅读