@opensig/opendesign
Version:
119 lines (112 loc) • 4.04 kB
CSS
.o-toggle {
--toggle-size: var(--o-control_size-m);
--toggle-text-size: var(--o-font_size-text1);
--toggle-text-height: var(--o-line_height-text1);
--toggle-radius: var(--o-radius_control-s);
--toggle-gap: 4px;
--toggle-icon-size: var(--o-icon_size_control-m);
--toggle-padding: 0 15px;
--toggle-color: var(--o-color-info1);
--toggle-color-hover: var(--o-color-info1);
--toggle-color-active: var(--o-color-info1);
--toggle-color-disabled: var(--o-color-info4);
--toggle-bg-color: var(--o-color-fill1);
--toggle-bg-color-hover: var(--o-color-control2-light);
--toggle-bg-color-active: var(--o-color-control3-light);
--toggle-bg-color-disabled: transparent;
--toggle-bd-color: var(--o-color-fill1);
--toggle-bd-color-hover: transparent;
--toggle-bd-color-active: transparent;
--toggle-bd-color-disabled: transparent;
--toggle-color-checked: var(--o-color-primary1);
--toggle-color-checked-hover: var(--o-color-primary2);
--toggle-color-checked-active: var(--o-color-primary3);
--toggle-color-checked-disabled: var(--o-color-primary4);
--toggle-bg-color-checked: transparent;
--toggle-bg-color-checked-hover: transparent;
--toggle-bg-color-checked-active: transparent;
--toggle-bg-color-checked-disabled: transparent;
--toggle-bd-color-checked: var(--o-color-primary1);
--toggle-bd-color-checked-hover: var(--o-color-primary2);
--toggle-bd-color-checked-active: var(--o-color-primary3);
--toggle-bd-color-checked-disabled: var(--o-color-primary4);
}
.o-toggle-round-pill {
--toggle-radius: var(--o-control_size-l);
}
.o-toggle {
display: inline-flex;
align-items: center;
justify-content: center;
height: var(--toggle-size);
max-width: var(--toggle-max-width);
min-width: var(--toggle-min-width);
padding: var(--toggle-padding);
font-size: var(--toggle-text-size);
line-height: var(--toggle-text-height);
transition: all var(--o-duration-s) var(--o-easing-standard);
background-color: var(--toggle-bg-color);
border: 1px solid var(--toggle-bd-color);
white-space: nowrap;
border-radius: var(--toggle-radius);
cursor: pointer;
}
@media (hover: hover) {
.o-toggle:hover {
color: var(--toggle-color-hover);
background-color: var(--toggle-bg-color-hover);
border: 1px solid var(--toggle-bd-color-hover);
}
}
.o-toggle:active {
color: var(--toggle-color-active);
background-color: var(--toggle-bg-color-active);
border: 1px solid var(--toggle-bd-color-active);
}
.o-toggle-checked {
background-color: var(--toggle-bg-color-checked);
color: var(--toggle-color-checked);
border: 1px solid var(--toggle-bd-color-checked);
}
@media (hover: hover) {
.o-toggle-checked:hover {
color: var(--toggle-color-checked-hover);
background-color: var(--toggle-bg-color-checked-hover);
border: 1px solid var(--toggle-bd-color-checked-hover);
}
}
.o-toggle-checked:active {
color: var(--toggle-color-checked-active);
background-color: var(--toggle-bg-color-checked-active);
border: 1px solid var(--toggle-bd-color-checked-active);
}
.o-toggle-disabled, .o-toggle-disabled:hover, .o-toggle-disabled.active {
cursor: not-allowed;
color: var(--toggle-color-disabled);
background-color: var(--toggle-bg-color-disabled);
border-color: var(--toggle-bd-color-disabled);
}
.o-toggle-checked.o-toggle-disabled, .o-toggle-checked.o-toggle-disabled:hover, .o-toggle-checked.o-toggle-disabled.active {
color: var(--toggle-color-checked-disabled);
background-color: var(--toggle-bg-color-checked-disabled);
border-color: var(--toggle-bd-color-checked-disabled);
}
.o-toggle-prefix {
display: inline-flex;
align-items: center;
font-size: var(--toggle-icon-size);
margin-right: var(--toggle-gap);
}
@media (max-width: 1680px) {
.o-toggle {
--toggle-size: 28px;
--toggle-text-size: var(--o-font_size-tip1);
--toggle-text-height: var(--o-line_height-tip1);
--toggle-icon-size: var(--o-icon_size_control-xs);
}
}
@media (max-width: 840px) {
.o-toggle {
--toggle-padding: 0 11px;
}
}