
El siguiente es un ejemplo del icono de hamburguesa CSS junto con la animación CSS. Tendrá que hacer clic en la hamburguesa para invocar la animación. El objetivo es cambiar la hamburguesa en una forma de X que el usuario sepa que debe hacer clic nuevamente para cerrar el menú. En el siguiente ejemplo de icono animado es tomado de Elijah Manor.
En CSS estamos usando una transition y transform a rotate antes y después de pseudo-elementos y fade-out de la barra de en medio para crear nuestra forma de X.
HTML
<a id="nav-toggle" href="#"><span></span></a>
CSS
#nav-toggle { position: absolute; left: 50%; top: 50%; }
#nav-toggle { cursor: pointer; padding: 10px 35px 16px 0px; }
#nav-toggle span, #nav-toggle span:before, #nav-toggle span:after {
cursor: pointer;
border-radius: 1px;
height: 5px;
width: 35px;
background: white;
position: absolute;
display: block;
content: '';
}
#nav-toggle span:before {
top: -10px;
}
#nav-toggle span:after {
bottom: -10px;
}
#nav-toggle span, #nav-toggle span:before, #nav-toggle span:after {
transition: all 500ms ease-in-out;
}
#nav-toggle.active span {
background-color: transparent;
}
#nav-toggle.active span:before, #nav-toggle.active span:after {
top: 0;
}
#nav-toggle.active span:before {
transform: rotate(45deg);
}
#nav-toggle.active span:after {
transform: rotate(-45deg);
}
jаvascript
document.querySelector( "#nav-toggle" )
.addEventListener( "click", function() {
this.classList.toggle( "active" );
});
Ver demostración...
Comentarios