docs/src/components/ToggleSwitch.module.scss

70 lines
1.3 KiB
SCSS

@import 'variables';
.switchButton {
background: rgba(255, 255, 255, 0.56);
border-radius: 0.5rem;
overflow: hidden;
width: $spacer * 4;
text-align: center;
font-size: $font-size-base;
letter-spacing: 1px;
color: $brand-purple;
position: relative;
padding-right: $spacer * 2;
&:before {
content: 'v3';
position: absolute;
top: 0;
bottom: 0;
right: 0;
width: $spacer * 2;
display: flex;
align-items: center;
justify-content: center;
z-index: 3;
pointer-events: none;
}
&Checkbox {
cursor: pointer;
position: absolute;
top: 0;
left: 0;
bottom: 0;
width: 100%;
height: 100%;
opacity: 0;
&:checked + .switchButtonLabel:before {
transform: translateX($spacer * 2);
transition: transform 300ms linear;
}
& + .switchButtonLabel {
position: relative;
padding: 0 0;
display: block;
user-select: none;
pointer-events: none;
&:before {
content: '';
background: $brand-grey-lighter;
height: 100%;
width: 100%;
position: absolute;
left: 0;
top: 0;
border-radius: 0.5rem;
transform: translateX(0);
transition: transform 300ms;
}
.switchButtonLabelSpan {
position: relative;
}
}
}
}