Efecto cargando de Android en HTML5 y CSS
CSS
Publicado el 5 de Mayo del 2018 por Xavi (548 códigos)
4.133 visualizaciones desde el 5 de Mayo del 2018
Efecto cargando similar al de Android con HTML5, CSS y SVG


<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style>
.loader {
/* nos posicionamos en el centro de la pantalla*/
left:50%;
top:50%;
position:fixed;
/* trasladamos el elemento al centro de su eje */
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
}
.loader #spinner {
/* definimos la linea */
stroke:#448aff;
stroke-width:3px;
-webkit-transform-origin: 50%;
 transform-origin: 50%;
webkit-animation:line 1.6s cubic-bezier(0.4, 0, 0.2, 1) infinite, rotate 1.6s linear infinite;
animation:line 1.6s cubic-bezier(0.4, 0, 0.2, 1) infinite, rotate 1.6s linear infinite;
}
/* definimos la rotación del elemento con la animación de la linea en su interior */
@-webkit-keyframes rotate {
from {
-webkit-transform: rotate(0);
transform: rotate(0);
}
to {
-webkit-transform: rotate(450deg);
transform: rotate(450deg);
}
}
@keyframes rotate {
from {
-webkit-transform: rotate(0);
transform: rotate(0);
}
to {
-webkit-transform: rotate(450deg);
transform: rotate(450deg);
}
}
/* definimos la animacion de la linea */
@-webkit-keyframes line {
0% {
stroke-dasharray: 2, 85.964;
-webkit-transform: rotate(0);
transform: rotate(0);
}
50% {
stroke-dasharray: 65.973, 21.9911;
stroke-dashoffset: 0;
}
100% {
stroke-dasharray: 2, 85.964;
stroke-dashoffset: -65.973;
-webkit-transform: rotate(90deg);
transform: rotate(90deg);
}
}
@keyframes line {
0% {
stroke-dasharray: 2, 85.964;
-webkit-transform: rotate(0);
transform: rotate(0);
}
50% {
stroke-dasharray: 65.973, 21.9911;
stroke-dashoffset: 0;
}
100% {
stroke-dasharray: 2, 85.964;
stroke-dashoffset: -65.973;
-webkit-transform: rotate(90deg);
transform: rotate(90deg);
}
}
</style>
</head>
<body>
<div class="loader">
<svg viewBox="0 0 32 32" width="32" height="32">
<circle id="spinner" cx="16" cy="16" r="14" fill="none"></circle>
</svg>
</div>
</body>
</html>
No hay comentarios