Frontend Animations
CSS Loading Animations
Alternatives with live code editing
White background
Interface background
Rings Current
Rings New
Pulse
Bounce
.spinner-circle { width: 50px; height: 50px; border: 4px solid #f3f3f3; border-top: 4px solid #2169F0; border-radius: 50%; animation: spin 1s linear infinite; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
.pulse-dot { width: 20px; height: 20px; background-color: var(--primary-color); border-radius: 50%; animation: pulse 1.5s ease-in-out infinite; } @keyframes pulse { 0% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.2); opacity: 0.7; } 100% { transform: scale(1); opacity: 1; } }
.bounce-dots { display: flex; gap: 8px; } .bounce-dots .dot { width: 12px; height: 12px; background-color: var(--primary-color); border-radius: 50%; animation: bounce 1.4s ease-in-out infinite both; } .bounce-dots .dot:nth-child(1) { animation-delay: -0.32s; } .bounce-dots .dot:nth-child(2) { animation-delay: -0.16s; } @keyframes bounce { 0%, 80%, 100% { transform: scale(0); } 40% { transform: scale(1); } }
.wave-loading { display: flex; gap: 4px; align-items: center; } .wave-bar { width: 4px; height: 20px; background-color: var(--primary-color); border-radius: 2px; animation: wave 1.2s ease-in-out infinite; } .wave-bar:nth-child(1) { animation-delay: -1.1s; } .wave-bar:nth-child(2) { animation-delay: -1.0s; } .wave-bar:nth-child(3) { animation-delay: -0.9s; } .wave-bar:nth-child(4) { animation-delay: -0.8s; } .wave-bar:nth-child(5) { animation-delay: -0.7s; } @keyframes wave { 0%, 40%, 100% { transform: scaleY(0.4); } 20% { transform: scaleY(1); } }
.Spinner-rings { width: 80px; } .Spinner-rings:after { content: " "; display: block; width: 80px; height: 80px; border-radius: 50%; border: 2px solid rgba(255, 165, 0, 1); border-color: rgba(255, 165, 0, 1) transparent rgba(255, 165, 0, 1) transparent; animation: Spinner-rings 2s linear infinite; } @keyframes Spinner-rings { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
.Spinner-rings { width: 70px; height: 70px; border-radius: 50%; opacity: 0.9; background-color: white; position: relative; } .Spinner-rings:after { content: ""; display: block; width: 50px; height: 50px; border: 4px solid #f3f3f3; border-top: 4px solid #2169F0; border-radius: 50%; margin: 10px auto; animation: Spinner-rings 0.9s linear infinite; } @keyframes Spinner-rings { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }