CSS/HTML only recreation of the iOS 7 toggle buttons. I love the little bounce that the slide has.
A Pen by Daniel Eden on CodePen.
| <div class="toggle"> | |
| <input type="checkbox" class="check"> | |
| <b class="b switch"></b> | |
| <b class="b track"></b> | |
| </div> |
CSS/HTML only recreation of the iOS 7 toggle buttons. I love the little bounce that the slide has.
A Pen by Daniel Eden on CodePen.
| * { | |
| margin: 0; | |
| padding: 0; | |
| position: relative; | |
| box-sizing: border-box; | |
| } | |
| html, body { | |
| height: 100%; | |
| } | |
| .b { | |
| display: block; | |
| } | |
| .toggle { | |
| position: absolute; | |
| top: 50%; | |
| left: 50%; | |
| width: 60px; | |
| height: 40px; | |
| border-radius: 100px; | |
| background-color: #ddd; | |
| margin: -20px -40px; | |
| overflow: hidden; | |
| box-shadow: inset 0 0 2px 1px rgba(0,0,0,.05); | |
| } | |
| .check { | |
| position: absolute; | |
| display: block; | |
| cursor: pointer; | |
| top: 0; | |
| left: 0; | |
| width: 100%; | |
| height: 100%; | |
| opacity: 0; | |
| z-index: 6; | |
| } | |
| .check:checked ~ .track { | |
| box-shadow: inset 0 0 0 20px #4bd863; | |
| } | |
| .check:checked ~ .switch { | |
| right: 2px; | |
| left: 22px; | |
| transition: .35s cubic-bezier(0.785, 0.135, 0.150, 0.860); | |
| transition-property: left, right; | |
| transition-delay: .05s, 0s; | |
| } | |
| .switch { | |
| position: absolute; | |
| left: 2px; | |
| top: 2px; | |
| bottom: 2px; | |
| right: 22px; | |
| background-color: #fff; | |
| border-radius: 36px; | |
| z-index: 1; | |
| transition: .35s cubic-bezier(0.785, 0.135, 0.150, 0.860); | |
| transition-property: left, right; | |
| transition-delay: 0s, .05s; | |
| box-shadow: 0 1px 2px rgba(0,0,0,.2); | |
| } | |
| .track { | |
| position: absolute; | |
| left: 0; | |
| top: 0; | |
| right: 0; | |
| bottom: 0; | |
| transition: .35s cubic-bezier(0.785, 0.135, 0.150, 0.860); | |
| box-shadow: inset 0 0 0 2px rgba(0,0,0,.05); | |
| border-radius: 40px; | |
| } |