@fesjs/fes-design
Version:
fes-design for PC
110 lines (109 loc) • 3.42 kB
CSS
.fes-checkbox {
--f-checkbox-border-color: var(--f-border-color-base);
--f-checkbox-bg-color: var(--f-white);
position: relative;
display: inline-flex;
align-items: center;
margin: 0;
padding: 0;
outline: none;
color: var(--f-text-color);
font-size: var(--f-font-size-base);
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', 'Helvetica Neue', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';
font-variant: tabular-nums;
line-height: 22px;
font-feature-settings: 'tnum';
cursor: pointer;
}
.fes-checkbox.is-item {
margin-right: var(--f-padding-large);
}
.fes-checkbox.is-item-vertical {
display: flex;
margin-right: 0;
}
.fes-checkbox-inner {
position: relative;
display: inline-block;
flex-shrink: 0;
width: 14px;
height: 14px;
line-height: 1;
vertical-align: middle;
background-color: var(--f-checkbox-bg-color);
border: var(--f-border-width-base) var(--f-border-style-base) transparent;
border-color: var(--f-checkbox-border-color);
border-radius: var(--f-border-radius-sm);
transition: all 0.3s cubic-bezier(0.7, 0.3, 0.1, 1);
}
.fes-checkbox-content {
display: inline-block;
margin-left: var(--f-padding-xsmall);
}
.fes-checkbox.is-hover .fes-checkbox-inner {
--f-checkbox-border-color: var(--f-primary-color);
transition: all 0.2s cubic-bezier(0.9, 0, 0.3, 0.7);
}
.fes-checkbox.is-checked .fes-checkbox-inner {
--f-checkbox-bg-color: var(--f-primary-color);
--f-checkbox-border-color: var(--f-primary-color);
transition: all 0.2s cubic-bezier(0.9, 0, 0.3, 0.7);
}
.fes-checkbox.is-checked .fes-checkbox-inner::before {
position: absolute;
top: 50%;
left: 50%;
width: 5px;
height: 8px;
border-right: 1px solid var(--f-white);
border-bottom: 1px solid var(--f-white);
transform: translate(-50%, -70.89242747%) rotate(45deg);
content: "";
}
.fes-checkbox.is-indeterminate .fes-checkbox-inner {
--f-checkbox-bg-color: var(--f-primary-color);
--f-checkbox-border-color: var(--f-primary-color);
}
.fes-checkbox.is-indeterminate .fes-checkbox-inner::before {
position: absolute;
top: 50%;
left: 50%;
width: 5px;
height: 8px;
border-right: 1px solid var(--f-white);
border-bottom: 1px solid var(--f-white);
transform: translate(-50%, -70.89242747%) rotate(45deg);
content: "";
width: 8px;
height: 1px;
background: var(--f-white);
border: none;
transform: translate(-50%, -50%) rotate(0);
}
.fes-checkbox.is-disabled {
color: var(--f-disabled-color-base);
cursor: not-allowed;
}
.fes-checkbox.is-disabled .fes-checkbox-inner {
--f-checkbox-bg-color: var(--f-component-bg-color);
--f-checkbox-border-color: var(--f-border-color-base);
}
.fes-checkbox.is-disabled.is-checked .fes-checkbox-inner {
--f-checkbox-bg-color: var(--f-border-color-base);
--f-checkbox-border-color: var(--f-border-color-base);
}
.fes-checkbox.is-disabled.is-checked .fes-checkbox-inner::before {
position: absolute;
top: 50%;
left: 50%;
width: 5px;
height: 8px;
border-right: 1px solid var(--f-white);
border-bottom: 1px solid var(--f-white);
transform: translate(-50%, -70.89242747%) rotate(45deg);
content: "";
}
.fes-checkbox.is-disabled.is-indeterminate .fes-checkbox-inner {
--f-checkbox-bg-color: var(--f-border-color-base);
--f-checkbox-border-color: var(--f-border-color-base);
}