165 lines
3.7 KiB
CSS
Executable File

/*
Skins:
Blue: #3498DB
Green: #1ABC9C
Grey: #3F3F3F
Purple: #AF7AC5
Red: #EC7063
Yellow: #F1C40F
*/
/* Debug*/
/* [class^=col-] {
-webkit-box-shadow: inset 0 0 0 1px #D6BF2B;
box-shadow: inset 0 0 0 1px #D6BF2B;
background: #F5DB31;
}
.checkbox-inline, .radio-inline, .checkbox, .radio {
-webkit-box-shadow: inset 0 0 0 1px #E08114;
box-shadow: inset 0 0 0 1px #E08114;
background: #F59931;
} */
.checkbox-inline,
.radio-inline,
.checkbox label,
.radio label,
.form-check-label {
position: relative;
text-align: left !important;
padding-left: 30px !important;
margin-right: 40px;
}
.foundation-checkbox,
.foundation-radio {
position: relative;
margin-right: 40px;
}
.foundation-checkbox label,
.foundation-radio label {
position: relative;
padding-left: 30px;
}
.check {
position: absolute;
top: 0;
left: 0;
display: block;
width: 19.6px;
height: 19.6px;
}
.form-check .check {
top: 1px;
}
.form-horizontal .checkbox-inline .check,
.form-horizontal .radio-inline .check {
top: 7px;
}
input[type='checkbox'] {
display: none;
}
input[type='checkbox'] ~ .check:before,
input[type='checkbox'] ~ label .check:before {
-webkit-transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
transition: transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
transition: transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75), -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
-webkit-transform: rotate(-45deg) scale(0, 0);
transform: rotate(-45deg) scale(0, 0);
content: '';
position: absolute;
margin-left: 1.4px;
left: 2px;
top: 2.1px;
z-index: 1;
width: 12.6px;
height: 7px;
border: 2px solid #3f3f3f;
border-top-style: none;
border-right-style: none;
}
input[type='checkbox']:checked ~ .check:before,
input[type='checkbox']:checked + label .check:before {
-webkit-transform: rotate(-45deg) scale(1, 1);
transform: rotate(-45deg) scale(1, 1);
}
input[type='checkbox'] ~ .check:after,
input[type='checkbox'] ~ label .check:after {
content: '';
position: absolute;
top: -2px;
left: 0;
width: 19.6px;
height: 19.6px;
background: #fff;
border: 2px solid #ccc;
cursor: pointer;
}
input[type='checkbox']:checked ~ .check:after,
input[type='checkbox']:checked + label .check:after {
border: 2px solid #727272;
}
/* 14px => 10px */
/* 14px => 20px */
input[type='radio'] {
display: none;
}
input[type='radio'] ~ .check:before,
input[type='radio'] ~ label .check:before {
-webkit-transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
transition: transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
transition: transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75), -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
-webkit-transform: scale(0, 0);
transform: scale(0, 0);
content: '';
position: absolute;
top: 5px;
left: 5px;
z-index: 1;
width: 10px;
height: 10px;
background: #3f3f3f;
border-radius: 50%;
}
input[type='radio']:checked ~ .check:before,
input[type='radio']:checked + label .check:before {
-webkit-transform: scale(1, 1);
transform: scale(1, 1);
}
input[type='radio'] ~ .check:after,
input[type='radio'] ~ label .check:after {
content: '';
position: absolute;
width: 20px;
height: 20px;
background: #fff;
-webkit-box-shadow: inset 0 0 0 2px #ccc;
box-shadow: inset 0 0 0 2px #ccc;
border-radius: 50%;
}
input[type='radio']:checked ~ .check:after,
input[type='radio']:checked + label .check:after {
-webkit-box-shadow: inset 0 0 0 2px #3f3f3f;
box-shadow: inset 0 0 0 2px #3f3f3f;
}