zent
Version:
一套前端设计语言和基于React的实现
96 lines (95 loc) • 1.85 kB
CSS
.zent-radio-group {
display: inline-block;
font-size: 12px;
}
.zent-radio-wrap {
display: inline-block;
cursor: pointer;
font-weight: 400;
font-size: 12px;
line-height: 14px;
margin: 0;
padding: 0;
margin-right: 15px;
vertical-align: middle
}
.zent-radio-wrap.zent-radio-disabled {
cursor: not-allowed;
}
.zent-radio-wrap:last-child {
margin-right: 0;
}
.zent-radio {
position: relative;
display: inline-block;
white-space: nowrap;
outline: none;
vertical-align: middle;
margin: 0;
padding: 0;
}
.zent-radio input {
position: absolute;
left: 0;
right: 0;
bottom: 0;
top: 0;
margin: 0;
padding: 0;
width: 100%;
height: 100%;
z-index: 1;
opacity: 0;
cursor: pointer;
}
.zent-radio + span {
margin-left: 5px;
margin-right: 5px;
vertical-align: middle;
line-height: 14px;
}
.zent-radio-inner {
position: relative;
top: 0;
left: 0;
display: inline-block;
width: 14px;
height: 14px;
border-radius: 7px;
border: 1px solid #bbb;
background: #fff;
-webkit-box-sizing: border-box;
box-sizing: border-box;
vertical-align: middle;
-webkit-transition: all 0.3s;
transition: all 0.3s
}
.zent-radio-inner::after {
position: absolute;
display: block;
content: ' ';
top: 4px;
left: 4px;
width: 4px;
height: 4px;
border-radius: 2px;
background: #fff;
-webkit-transform: scale(0);
transform: scale(0);
-webkit-transition: all 0.12s ease-in-out;
transition: all 0.12s ease-in-out;
}
.zent-radio-checked .zent-radio-inner {
border-color: #27f;
background: #38f
}
.zent-radio-checked .zent-radio-inner::after {
-webkit-transform: scale(1);
transform: scale(1);
}
.zent-radio-disabled .zent-radio-inner {
opacity: 0.4;
}
.zent-radio-disabled input[type="radio"] {
cursor: not-allowed;
}