409 lines
8.3 KiB
SCSS
409 lines
8.3 KiB
SCSS
|
/*===== SWITCHERS =====*/
|
||
|
|
||
|
input[type=checkbox],
|
||
|
input[type=radio] {
|
||
|
box-sizing: border-box;
|
||
|
padding: 0;
|
||
|
}
|
||
|
|
||
|
.switch {
|
||
|
position: relative;
|
||
|
display: inline-block;
|
||
|
vertical-align: top;
|
||
|
width: 64px;
|
||
|
height: 30px;
|
||
|
background-color: transparent;
|
||
|
cursor: pointer;
|
||
|
.switch-input {
|
||
|
position: absolute;
|
||
|
top: 0;
|
||
|
left: 0;
|
||
|
opacity: 0;
|
||
|
display: none;
|
||
|
visibility: hidden;
|
||
|
}
|
||
|
.switch-label {
|
||
|
position: relative;
|
||
|
display: block;
|
||
|
height: inherit;
|
||
|
font-size: 0.625rem;
|
||
|
font-weight: 600;
|
||
|
text-transform: uppercase;
|
||
|
background-color: #fff;
|
||
|
border: 1px solid #c2cfd6;
|
||
|
border-radius: 4px;
|
||
|
transition: opacity background-color .3s 0.3s ease-out;
|
||
|
}
|
||
|
.switch-handle {
|
||
|
position: absolute;
|
||
|
top: 3px;
|
||
|
left: 3px;
|
||
|
width: 24px;
|
||
|
height: 24px;
|
||
|
background: #fff;
|
||
|
border: 1px solid #c2cfd6;
|
||
|
border-radius: 1px;
|
||
|
transition: left .3s ease-out;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch .switch-input:checked~.switch-handle {
|
||
|
left: 37px;
|
||
|
}
|
||
|
|
||
|
/* Switch context properties */
|
||
|
|
||
|
.switch-primary {
|
||
|
>.switch-input:checked~.switch-label {
|
||
|
background-color: $primary !important;
|
||
|
border-color: $primary;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-handle {
|
||
|
border-color: transparent;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch-secondary {
|
||
|
>.switch-input:checked~.switch-label {
|
||
|
background-color: $secondary !important;
|
||
|
border-color: $secondary;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-handle {
|
||
|
border-color: transparent;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch-success {
|
||
|
>.switch-input:checked~.switch-label {
|
||
|
background-color: $success !important;
|
||
|
border-color: $success;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-handle {
|
||
|
border-color: transparent;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch-info {
|
||
|
>.switch-input:checked~.switch-label {
|
||
|
background-color: $info !important;
|
||
|
border-color: $info;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-handle {
|
||
|
border-color: transparent;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch-warning {
|
||
|
>.switch-input:checked~.switch-label {
|
||
|
background-color: $warning !important;
|
||
|
border-color: $warning;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-handle {
|
||
|
border-color: transparent;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch-danger {
|
||
|
>.switch-input:checked~.switch-label {
|
||
|
background-color: $danger !important;
|
||
|
border-color: $danger;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-handle {
|
||
|
border-color: transparent;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/* Switch Pill */
|
||
|
|
||
|
.switch-pill .switch-handle,
|
||
|
.switch-pill .switch-label {
|
||
|
border-radius: 50px !important;
|
||
|
}
|
||
|
|
||
|
/* Switch Outline */
|
||
|
|
||
|
.switch-outline-primary {
|
||
|
>.switch-input:checked~.switch-label {
|
||
|
background-color: $white !important;
|
||
|
border-color: $primary;
|
||
|
}
|
||
|
.switch-input:checked~.switch-label:after {
|
||
|
color: $primary;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-handle {
|
||
|
border-color: $primary;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch-outline-secondary {
|
||
|
>.switch-input:checked~.switch-label {
|
||
|
background-color: $white !important;
|
||
|
border-color: $secondary;
|
||
|
}
|
||
|
.switch-input:checked~.switch-label:after {
|
||
|
color: $secondary;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-handle {
|
||
|
border-color: $secondary;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch-outline-success {
|
||
|
>.switch-input:checked~.switch-label {
|
||
|
background-color: $white !important;
|
||
|
border-color: $success;
|
||
|
}
|
||
|
.switch-input:checked~.switch-label:after {
|
||
|
color: $success;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-handle {
|
||
|
border-color: $success;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch-outline-info {
|
||
|
>.switch-input:checked~.switch-label {
|
||
|
background-color: $white !important;
|
||
|
border-color: $info;
|
||
|
}
|
||
|
.switch-input:checked~.switch-label:after {
|
||
|
color: $info;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-handle {
|
||
|
border-color: $info;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch-outline-warning {
|
||
|
>.switch-input:checked~.switch-label {
|
||
|
background-color: $white !important;
|
||
|
border-color: $warning;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-label:after {
|
||
|
color: $warning;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-handle {
|
||
|
border-color: $warning;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch-outline-danger {
|
||
|
>.switch-input:checked~.switch-label {
|
||
|
background-color: $white !important;
|
||
|
border-color: $danger;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-label:after {
|
||
|
color: $danger;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-handle {
|
||
|
border-color: $danger;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/* Switch Outline Alternative */
|
||
|
|
||
|
.switch-outline-alt-primary {
|
||
|
>.switch-input:checked~.switch-label {
|
||
|
background-color: $white !important;
|
||
|
border-color: $primary;
|
||
|
}
|
||
|
.switch-input:checked~.switch-label:after {
|
||
|
color: $primary;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-handle {
|
||
|
background-color: $primary;
|
||
|
border-color: $primary;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch-outline-alt-secondary {
|
||
|
>.switch-input:checked~.switch-label {
|
||
|
background-color: $white !important;
|
||
|
border-color: $secondary;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-label:after {
|
||
|
color: $secondary;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-handle {
|
||
|
background-color: $secondary;
|
||
|
border-color: $secondary;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch-outline-alt-success {
|
||
|
>.switch-input:checked~.switch-label {
|
||
|
background-color: $white !important;
|
||
|
border-color: $success;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-label:after {
|
||
|
color: $success;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-handle {
|
||
|
background-color: $success;
|
||
|
border-color: $success;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch-outline-alt-info {
|
||
|
>.switch-input:checked~.switch-label {
|
||
|
background-color: $white !important;
|
||
|
border-color: $info;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-label:after {
|
||
|
color: $info;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-handle {
|
||
|
background-color: $info;
|
||
|
border-color: $info;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch-outline-alt-warning {
|
||
|
>.switch-input:checked~.switch-label {
|
||
|
background-color: $white !important;
|
||
|
border-color: $warning;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-label:after {
|
||
|
color: $warning;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-handle {
|
||
|
background-color: $warning;
|
||
|
border-color: $warning;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch-outline-alt-danger {
|
||
|
>.switch-input:checked~.switch-label {
|
||
|
background-color: $white !important;
|
||
|
border-color: $danger;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-label:after {
|
||
|
color: $danger;
|
||
|
}
|
||
|
>.switch-input:checked~.switch-handle {
|
||
|
background-color: $danger;
|
||
|
border-color: $danger;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/* Switch With Text */
|
||
|
|
||
|
.switch.switch-text,
|
||
|
.switch.switch-icon {
|
||
|
position: relative;
|
||
|
display: inline-block;
|
||
|
vertical-align: top;
|
||
|
width: 64px;
|
||
|
height: 30px;
|
||
|
background-color: transparent;
|
||
|
cursor: pointer;
|
||
|
.switch-input {
|
||
|
position: absolute;
|
||
|
top: 0;
|
||
|
left: 0;
|
||
|
opacity: 0;
|
||
|
}
|
||
|
.switch-label {
|
||
|
position: relative;
|
||
|
display: block;
|
||
|
height: inherit;
|
||
|
font-size: 0.625rem;
|
||
|
font-weight: 600;
|
||
|
text-transform: uppercase;
|
||
|
background-color: $white;
|
||
|
border: 1px solid #c2cfd6;
|
||
|
border-radius: 2px;
|
||
|
transition: opacity background .3s ease-out;
|
||
|
}
|
||
|
.switch-handle {
|
||
|
position: absolute;
|
||
|
top: 3px;
|
||
|
left: 3px;
|
||
|
width: 24px;
|
||
|
height: 24px;
|
||
|
background: #fff;
|
||
|
border: 1px solid #c2cfd6;
|
||
|
border-radius: .06rem;
|
||
|
transition: left .3s ease-out;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch.switch-text {
|
||
|
.switch-label:after,
|
||
|
.switch-label:before {
|
||
|
position: absolute;
|
||
|
top: 50%;
|
||
|
width: 50%;
|
||
|
margin-top: -0.31rem;
|
||
|
line-height: 1;
|
||
|
font-size: 12px;
|
||
|
font-weight: 400;
|
||
|
font-family: $font-family-base;
|
||
|
text-align: center;
|
||
|
transition: inherit;
|
||
|
}
|
||
|
.switch-label:before {
|
||
|
right: 1px;
|
||
|
color: #c2cfd6;
|
||
|
content: attr(data-off);
|
||
|
}
|
||
|
.switch-label:after {
|
||
|
left: 1px;
|
||
|
color: #fff;
|
||
|
content: attr(data-on);
|
||
|
opacity: 0;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch.switch-text .switch-input:checked~.switch-label:before {
|
||
|
opacity: 0;
|
||
|
}
|
||
|
|
||
|
.switch.switch-text .switch-input:checked~.switch-label:after {
|
||
|
opacity: 1;
|
||
|
}
|
||
|
|
||
|
.switch.switch-text .switch-input:checked~.switch-handle {
|
||
|
left: 37px;
|
||
|
}
|
||
|
|
||
|
/* Switch With Icon */
|
||
|
|
||
|
.switch.switch-icon {
|
||
|
.switch-label:after,
|
||
|
.switch-label:before {
|
||
|
position: absolute;
|
||
|
top: 50%;
|
||
|
width: 50%;
|
||
|
margin-top: -8px;
|
||
|
line-height: 1;
|
||
|
font-size: 1rem;
|
||
|
font-weight: 400;
|
||
|
font-family: $font-family-icon;
|
||
|
text-align: center;
|
||
|
transition: inherit;
|
||
|
}
|
||
|
.switch-label:before {
|
||
|
right: 1px;
|
||
|
color: #c2cfd6;
|
||
|
content: '\f156';
|
||
|
}
|
||
|
.switch-label:after {
|
||
|
left: 1px;
|
||
|
color: #fff;
|
||
|
content: '\f12c';
|
||
|
opacity: 0;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.switch.switch-icon .switch-input:checked~.switch-label:before {
|
||
|
opacity: 0;
|
||
|
}
|
||
|
|
||
|
.switch.switch-icon .switch-input:checked~.switch-label:after {
|
||
|
opacity: 1;
|
||
|
}
|
||
|
|
||
|
.switch.switch-icon .switch-input:checked~.switch-handle {
|
||
|
left: 37px;
|
||
|
}
|