NuclearDispersionSystem/ant-design-vue-jeecg/node_modules/vxe-table/styles/switch.scss
2023-09-14 14:47:11 +08:00

116 lines
2.1 KiB
SCSS

/**Variable**/
.vxe-switch {
display: inline-block;
color: $vxe-font-color;
vertical-align: middle;
padding: 0.4em;
user-select: none;
text-align: center;
&.is--animat {
.vxe-switch--button {
transition: border-color .3s, background-color .3s;
}
.vxe-switch--icon {
transition: all 0.3s;
}
}
&.is--on {
.vxe-switch--button {
padding-right: 1.7em;
background-color: $vxe-primary-color;
}
.vxe-switch--icon {
left: 100%;
transform: translateX(-1.4em);
}
}
&.is--off {
.vxe-switch--button {
padding-left: 1.7em;
background-color: rgba(0,0,0,.35);
}
.vxe-switch--icon {
left: 0.2em;
transform: translateX(0);
}
}
&.is--on .vxe-switch--label-off,
&.is--off .vxe-switch--label-on {
height: 0;
visibility: hidden;
overflow: hidden;
}
&.is--on,
&.is--off {
.vxe-switch--label {
opacity: 1;
}
}
&:not(.is--disabled) {
.vxe-switch--button {
cursor: pointer;
&:focus {
box-shadow: 0 0 0.4em 0 $vxe-primary-color;
}
}
}
&.is--disabled {
.vxe-switch--button {
cursor: no-drop;
}
&.is--on {
.vxe-switch--button {
background-color: lighten($vxe-primary-color, 20%);
}
}
&.is--off {
.vxe-switch--button {
background-color: rgba(0,0,0,.15);
}
}
}
.vxe-switch--button {
display: block;
position: relative;
height: 1.6em;
line-height: 1;
min-width: 3.2em;
padding: 0 0.6em;
border-radius: 1em;
border: 0;
outline: 0;
}
.vxe-switch--label {
opacity: 0;
display: block;
color: #fff;
font-size: 0.8em;
}
.vxe-switch--icon {
position: absolute;
top: 0.2em;
left: 0;
width: 1.2em;
height: 1.2em;
border-radius: 50%;
background-color: #fff;
}
.vxe-switch--label-icon {
margin-right: 0.25em;
}
}
.vxe-switch {
font-size: $vxe-font-size;
&.size--medium {
font-size: $vxe-font-size-medium;
}
&.size--small {
font-size: $vxe-font-size-small;
}
&.size--mini {
font-size: $vxe-font-size-mini;
}
}