mdb-ui-kit/scss/_radios.scss

102 lines
2.1 KiB
SCSS
Raw Normal View History

.radio label,
label.radio-inline {
position: relative;
padding-left: $mdb-radio-size + $mdb-radio-label-padding; // absolutely positioned so add the radio size
2014-10-03 15:58:24 +04:00
2015-12-17 18:47:55 +03:00
.mdb-radio-outer-circle, // don't use generic span, it may conflict with span in user markup #693
.mdb-radio-inner-circle {
position: absolute;
top: calc-top($line-height, $font-size-base, $mdb-radio-size); // vertical center of line-height
2015-12-14 23:19:17 +03:00
left: 0;
display: inline-block;
width: $mdb-radio-size;
height: $mdb-radio-size;
transition-duration: 0.2s;
2015-12-14 23:19:17 +03:00
&.mdb-radio-outer-circle {
border: $mdb-radio-border solid $mdb-radio-color-off;
border-radius: 50%;
transition: border-color ease .28s;
2015-12-14 23:19:17 +03:00
}
&.mdb-radio-inner-circle {
display: inline-block;
background-color: $mdb-radio-color-on;
border-radius: 50%;
transition: transform ease .28s;
2015-12-14 23:19:17 +03:00
transform: scale3d(0, 0, 0);
// focus/press ripple
&::after {
position: absolute;
top: -#{$mdb-radio-size};
left: -#{$mdb-radio-size};
z-index: 1;
display: block;
width: 50px;
height: 50px;
margin: 0;
content: "";
background-color: $gray-dark;
2015-12-14 23:19:17 +03:00
border-radius: 100%;
opacity: 0;
transform: scale3d(1.5, 1.5, 1);
}
}
}
input[type=radio] {
width: 0;
height: 0;
overflow: hidden;
opacity: 0;
2015-11-25 02:40:52 +03:00
&:checked {
2015-12-14 23:19:17 +03:00
@include mdb-radio-color($mdb-radio-color-on);
~ .mdb-radio-inner-circle {
transform: scale3d(0.55, 0.55, 1);
&::after {
animation: rippleOn 500ms;
}
}
2015-11-25 02:40:52 +03:00
}
2015-12-14 23:19:17 +03:00
&:not(:checked) ~ .mdb-radio-inner-circle::after {
animation: rippleOff 500ms;
}
2015-11-25 02:40:52 +03:00
&[disabled],
fieldset[disabled] & {
2015-12-14 23:19:17 +03:00
@include mdb-radio-color($mdb-radio-color-disabled);
2015-11-25 02:40:52 +03:00
2015-12-21 22:27:44 +03:00
.bg-inverse & {
@include mdb-radio-color($mdb-radio-color-disabled-inverse);
2015-12-14 23:19:17 +03:00
}
2015-11-25 02:40:52 +03:00
}
}
2014-10-03 15:58:24 +04:00
}
@keyframes rippleOn {
0% {
opacity: 0;
}
50% {
opacity: 0.2;
}
100% {
opacity: 0;
}
2014-10-03 15:58:24 +04:00
}
@keyframes rippleOff {
0% {
opacity: 0;
}
50% {
opacity: 0.2;
}
100% {
opacity: 0;
}
2014-10-03 15:58:24 +04:00
}