Repository URL to install this package:
|
Version:
8.1.0-rc.5 ▾
|
.Toggle {
display: flex;
position: relative;
cursor: pointer;
}
.Toggle-disabled {
cursor: default;
}
.Toggle-label {
position: relative;
padding-left: var(--space-2x);
display: flex;
flex-direction: column;
width: 100%;
line-height: 1.3;
}
.Toggle-input {
opacity: 0;
width: 0;
height: 0;
}
.Toggle-slider {
flex: 0 0 36px;
-ms-flex: 0 0 33px; /* IE11 style fix */
position: relative;
height: 20px;
border: 2px solid transparent;
top: 0;
left: 0;
right: 0;
bottom: 0;
-webkit-transition: 0.4s;
transition: 0.4s;
&:before {
position: absolute;
content: '';
height: var(--space-2x);
width: var(--space-2x);
-webkit-transition: 0.4s;
transition: 0.4s;
background-color: var(--color-white);
}
}
.Toggle-input:checked + .Toggle-slider:before {
-webkit-transform: translateX(var(--space-2x));
transform: translateX(var(--space-2x));
-ms-transform: translateX(var(--space)) translateX(var(--space));
}
.Toggle-slider {
border-radius: var(--space-4x);
&:before {
border-radius: 50%;
}
}
.Toggle--light {
& .Toggle-label--text {
color: var(--color-white);
}
& .Toggle-label--subtext {
color: var(--color-neutral-200);
}
& .Toggle-slider {
background-color: var(--color-neutral-600);
&:hover {
border: 2px solid var(--color-brand-400);
}
}
& .Toggle-input:checked + .Toggle-slider {
background-color: var(--color-green-600);
}
&.Toggle--disabled {
& .Toggle-slider,
& .Toggle-input:checked + .Toggle-slider {
background-color: var(--color-neutral-300);
&:hover {
border: 2px solid transparent;
}
}
}
}
.Toggle--dark {
& .Toggle-label--text {
color: var(--color-neutral-text);
}
& .Toggle-label--subtext {
color: var(--color-neutral-700);
}
& .Toggle-slider {
background-color: var(--color-neutral-600);
&:hover {
border: 2px solid var(--color-brand-500);
}
}
& .Toggle-input:checked + .Toggle-slider {
background-color: var(--color-green-600);
}
&.Toggle--disabled {
& .Toggle-label--text {
color: var(--color-neutral-700);
}
& .Toggle-slider,
& .Toggle-input:checked + .Toggle-slider {
background-color: var(--color-neutral-300);
&:hover {
border: 2px solid transparent;
}
}
& .Toggle-input:checked ~ .Toggle-label > .Toggle-label--text {
color: var(--color-neutral-text);
}
}
}