mirror of https://github.com/ElemeFE/element
114 lines
2.2 KiB
SCSS
114 lines
2.2 KiB
SCSS
@import "mixins/mixins";
|
|
@import "common/var";
|
|
|
|
@include b(switch) {
|
|
display: inline-block;
|
|
position: relative;
|
|
font-size: $--switch-font-size;
|
|
line-height: $--switch-height;
|
|
height: $--switch-height;
|
|
vertical-align: middle;
|
|
@include when(disabled) {
|
|
& .el-switch__core,
|
|
& .el-switch__label {
|
|
cursor: not-allowed;
|
|
}
|
|
}
|
|
|
|
@include e(label) {
|
|
transition: .2s;
|
|
height: $--switch-height;
|
|
display: inline-block;
|
|
font-size: $--switch-font-size;
|
|
font-weight: 500;
|
|
cursor: pointer;
|
|
vertical-align: middle;
|
|
color: $--color-text-primary;
|
|
|
|
@include when(active) {
|
|
color: $--color-primary;
|
|
}
|
|
|
|
@include m(left) {
|
|
margin-right: 10px;
|
|
}
|
|
@include m(right) {
|
|
margin-left: 10px;
|
|
}
|
|
& * {
|
|
line-height: 1;
|
|
font-size: $--switch-font-size;
|
|
display: inline-block;
|
|
}
|
|
}
|
|
|
|
@include e(input) {
|
|
position: absolute;
|
|
width: 0;
|
|
height: 0;
|
|
opacity: 0;
|
|
margin: 0;
|
|
&:focus ~ .el-switch__core {
|
|
outline: 1px solid $--color-primary;
|
|
}
|
|
}
|
|
|
|
@include e(core) {
|
|
margin: 0;
|
|
display: inline-block;
|
|
position: relative;
|
|
width: $--switch-width;
|
|
height: $--switch-height;
|
|
border: 1px solid $--switch-off-color;
|
|
outline: none;
|
|
border-radius: $--switch-core-border-radius;
|
|
box-sizing: border-box;
|
|
background: $--switch-off-color;
|
|
cursor: pointer;
|
|
transition: border-color .3s, background-color .3s;
|
|
vertical-align: middle;
|
|
|
|
& .el-switch__button {
|
|
position: absolute;
|
|
top: 1px;
|
|
left: 1px;
|
|
border-radius: $--border-radius-circle;
|
|
transition: transform .3s;
|
|
width: $--switch-button-size;
|
|
height: $--switch-button-size;
|
|
background-color: $--color-white;
|
|
}
|
|
}
|
|
|
|
@include when(checked) {
|
|
.el-switch__core {
|
|
border-color: $--switch-on-color;
|
|
background-color: $--switch-on-color;
|
|
}
|
|
}
|
|
|
|
@include when(disabled) {
|
|
opacity: 0.6;
|
|
}
|
|
|
|
@include m(wide) {
|
|
.el-switch__label {
|
|
&.el-switch__label--left {
|
|
span {
|
|
left: 10px;
|
|
}
|
|
}
|
|
&.el-switch__label--right {
|
|
span {
|
|
right: 10px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
& .label-fade-enter,
|
|
& .label-fade-leave-active {
|
|
opacity: 0;
|
|
}
|
|
}
|