Olá pessoal!
Faz um tempo que eu não falo de CSS3 aqui no blog, e acho que hoje podemos ver uma dica bastante útil, pelo menos pra mim ajudou.
É sobre como criar um efeito de animação com checkbox utilizando apenas CSS3.
O efeito é bastante bacana e você vai aprender agora! Vamos lá:
Veja o código HTML:
<ul> <li> <input type="checkbox" class="styled" id="b_1"> <label class="styled" for="b_1">Checkbox Um</label> </li> <li> <input type="checkbox" class="styled" id="b_2"> <label class="styled" for="b_2">Checkbox Dois</label> </li> <li> <input type="checkbox" class="styled" id="b_3"> <label class="styled" for="b_3">Checkbox Três</label> </li> </ul>
Veja o código CSS:
ul { list-style: none; } ul li { padding: 0.2em } label.styled { background-color: #f8a901; display: block; width: 300px; text-align: center; padding: 0.6em 2em; color: #fff; transition: all 0.4s ease; position: relative; overflow: hidden; cursor: pointer; } label.styled:before { content: "«"; line-height: 40px; font-size: 25px; color: #fff; width:40px; height:100%; background-color: #9a5502; position: absolute; top:0; left:100%; transition: all 0.4s ease; opacity: 0; border-right: 2px solid #fff; } label.styled:hover:before { left: 98%; opacity: .3; } input.styled { display: none; } /* :: CHECAR :: */ input.styled:checked ~ label.styled { background-color: #f88701; animation: throw 0.5s linear; } input.styled:checked ~ label.styled:before { left:0px; opacity: 1; } @keyframes throw { 0%,63% {margin-left: 0;} 64% {margin-left: -5px;} 100% {margin-left: 0;} }
Viu como é bastante simples?
Utilizando apenas uma jogada com o conteudo Before e Animation do CSS você deu um efeito bacana!
Até a próxima pessoal! 😉