Author: | jchristianhall |
---|---|
Views Total: | 21,245 views |
Official Page: | Go to website |
Last Update: | July 20, 2014 |
License: | MIT |
Preview:

Description:
A set of cool radio buttons with cool CSS3 based check and hover animations inspired by Google’s new Material Design. Created by jchristianhall.
How to use it:
Create a regular radio input inside a label
element.
<label class="radio"><input id="radio1" type="radio" name="radios" checked><span class="outer"><span class="inner"></span></span>Label 1</label>
Set the animations in the CSS.
@-webkit-keyframes cardEnter { 0%, 20%, 40%, 60%, 80%, 100% { -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); } 0% { opacity: 0; -webkit-transform: scale3d(0.3, 0.3, 0.3); } 20% { -webkit-transform: scale3d(1.1, 1.1, 1.1); } 40% { -webkit-transform: scale3d(0.9, 0.9, 0.9); } 60% { opacity: 1; -webkit-transform: scale3d(1.03, 1.03, 1.03); } 80% { -webkit-transform: scale3d(0.97, 0.97, 0.97); } 100% { opacity: 1; -webkit-transform: scale3d(1, 1, 1); } } @keyframes cardEnter { 0%, 20%, 40%, 60%, 80%, 100% { -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); } 0% { opacity: 0; -webkit-transform: scale3d(0.3, 0.3, 0.3); transform: scale3d(0.3, 0.3, 0.3); } 20% { -webkit-transform: scale3d(1.1, 1.1, 1.1); transform: scale3d(1.1, 1.1, 1.1); } 40% { -webkit-transform: scale3d(0.9, 0.9, 0.9); transform: scale3d(0.9, 0.9, 0.9); } 60% { opacity: 1; -webkit-transform: scale3d(1.03, 1.03, 1.03); transform: scale3d(1.03, 1.03, 1.03); } 80% { -webkit-transform: scale3d(0.97, 0.97, 0.97); transform: scale3d(0.97, 0.97, 0.97); } 100% { opacity: 1; -webkit-transform: scale3d(1, 1, 1); transform: scale3d(1, 1, 1); } }
Individual controls.
.radio { display: inline-block; padding-right: 20px; font-size: 18px; line-height: 49px; cursor: pointer; } .radio:hover .inner { -webkit-transform: scale(0.5); -ms-transform: scale(0.5); transform: scale(0.5); opacity: .5; } .radio input { width: 1px; height: 1px; opacity: 0; } .radio input:checked + .outer .inner { -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; } .radio input:checked + .outer { border: 3px solid #f08b3b; } .radio input:focus + .outer .inner { -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; background-color: #e67012; } .radio .outer { width: 20px; height: 20px; display: block; float: left; margin: 10px 9px 10px 10px; border: 3px solid #0c70b4; border-radius: 50%; background-color: #fff; } .radio .inner { -webkit-transition: all 0.25s ease-in-out; transition: all 0.25s ease-in-out; width: 16px; height: 16px; -webkit-transform: scale(0); -ms-transform: scale(0); transform: scale(0); display: block; margin: 2px; border-radius: 50%; background-color: #f08b3b; opacity: 0; }