heyui
Version:
A UI components Library.
94 lines (87 loc) • 1.93 kB
text/less
@checkbox-prefix: ~"@{prefix}checkbox";
@checkbox-border: 1px solid @gray1-color;
input[type=checkbox],.@{checkbox-prefix}>label>span {
-webkit-appearance: none;
display: inline-block;
width: 16px;
height: 16px;
margin: 0px;
border: @checkbox-border;
cursor: pointer;
border-radius: 2px;
vertical-align:-4px;
margin-right: 5px;
transition: background linear @transition-time;
position: relative;
font-family: inherit;
outline: none;
background-color: @white-color;
&:checked,&[checked],&[indeterminate] {
background-color: @primary-color;
border: 1px solid @primary-color;
}
&:after {
box-sizing: content-box;
content: "";
border: 2px solid @white-color;
border-left: 0;
border-top: 0;
height: 8px;
left: 4px;
position: absolute;
top: 1px;
width: 4px;
transition: all @transition-time;
transform: rotate(45deg) scale(0);
}
&[indeterminate]:after{
content: "";
width: 8px;
height: 0px;
left: 2px;
top: 6px;
transform: rotate(0deg) scale(1);
}
&:checked:after,&[checked]:after{
transform: rotate(45deg) scale(1);
}
&:hover {
border-color: @primary-color;
}
&[disabled],
&[readonly] {
pointer-events: painted;
cursor: @disabled-cursor;
border-color: @gray1-color;
background-color: @gray1-color;
&:after {
border-color: @gray1-color;
}
&:checked,&[checked],&[indeterminate] {
background-color: @gray1-color;
&:after {
border-color: @white-color;
}
}
}
}
.@{checkbox-prefix} {
display: inline-block;
>label {
+label{
margin-left: 15px;
}
display: inline-block;
&:hover>span{
border-color: @primary-color;
}
}
&[disabled]>label{
color: @gray1-color;
pointer-events: painted;
cursor: @disabled-cursor;
&:hover>span {
border-color: @gray1-color;
}
}
}