snappymail/dev/Styles/Components.less
2021-11-18 12:40:38 +01:00

106 lines
1.4 KiB
Text

.checkbox-box-sizes() {
top: 0;
left: 0;
width: 18px;
height: 18px;
border: 2px solid #999;
transform: rotate(0deg);
}
.checkbox-mark-sizes() {
top: -1px;
left: 5px;
width: 10px;
height: 18px;
border: 2px solid #0F9D58;
border-width: 0 2px 2px 0;
transform: rotate(45deg);
}
.checkbox-result-sizes() {
top: 13px;
left: 5px;
width: 4px;
height: 4px;
transform: rotate(45deg);
}
.e-component {
white-space: nowrap;
* {
display: inline-block;
}
select:focus {
outline: 1px dotted;
}
&.e-checkbox {
cursor: pointer;
margin-bottom: 6px;
margin-left: -2px;
padding: 2px;
&:focus {
outline: 1px dotted;
}
&.disabled {
cursor: not-allowed;
opacity: 0.5;
}
}
span {
margin-left: 0.5em;
white-space: normal;
}
select + span {
line-height: 1.43em;
padding: 4px 0;
}
}
.e-checkbox.material-design {
line-height: 20px;
> div {
position: relative;
width: 18px;
height: 18px;
vertical-align: top;
}
> div > div {
position: absolute;
box-sizing: border-box;
margin-top: 1px;
animation: checkmark-to-box 200ms ease-out forwards;
}
div.checked {
animation: box-to-checkmark 200ms ease-out forwards;
}
}
@keyframes box-to-checkmark {
0% { .checkbox-box-sizes(); }
50% { .checkbox-result-sizes(); }
100% { .checkbox-mark-sizes(); }
}
@keyframes checkmark-to-box {
0% { .checkbox-mark-sizes(); }
50% { .checkbox-result-sizes(); }
100% { .checkbox-box-sizes(); }
}