Categoria: Sviluppo
Generatore di spinner di caricamento CSS
Progetta indicatori di caricamento CSS leggeri in locale e copia il codice
Crea spinner di caricamento solo CSS con anteprima dal vivo. Regola dimensione, colore, spessore e velocità, poi copia i frammenti HTML e CSS. Senza JavaScript né immagini.
Anteprima
<span class="loader" role="status" aria-label="Caricamento…"></span>
.loader {
display: inline-block;
box-sizing: border-box;
width: 40px;
height: 40px;
border: 4px solid #dfe4de;
border-top-color: #2f6f4f;
border-radius: 50%;
animation: loader-spin 0.9s linear infinite;
}
@keyframes loader-spin {
to { transform: rotate(360deg); }
}
@media (prefers-reduced-motion: reduce) {
.loader,
.loader span {
animation-duration: 0.01ms;
animation-iteration-count: 1;
}
}
Ogni frammento anima solo transform e opacity e termina con un blocco prefers-reduced-motion, così l'animazione si ferma per chi ha chiesto al proprio sistema di ridurre il movimento.
Niente JavaScript, niente immagini, niente web font, e niente esce dal tuo browser.
Tutto ciò che c'è in questa pagina viene elaborato nel tuo browser. Niente viene caricato.
A cosa serve
Un indicatore di caricamento è uno dei pochi casi in cui poche righe di CSS battono nettamente una libreria: nessuno script da caricare, nessuna immagine da richiedere, niente da inizializzare prima di ciò che stai aspettando. Questi cinque modelli — anello, doppio anello, punti, barre e pulsazione — animano solo `transform` e `opacity`, così il browser può eseguirli sul compositore invece di ricalcolare il layout a ogni fotogramma. Ogni frammento termina con un blocco `prefers-reduced-motion`, perché uno spinner è decorazione e chi ha chiesto al sistema di smettere di muovere le cose non dovrebbe stare a guardarlo. Il markup è uno `<span role="status">` con etichetta, così uno screen reader annuncia l'attesa invece di trovare una casella vuota.
Come si usa
- Scegli un modello, poi regola dimensione, spessore, velocità e colori.
- Rinomina la classe se rischia di entrare in conflitto con il tuo foglio di stile.
- Copia HTML e CSS nel tuo progetto.
Privacy
Questo strumento funziona interamente nel tuo browser. Quello che inserisci non viene mai caricato, salvato o condiviso: chiudendo la scheda sparisce.
Domande frequenti
- Gli spinner sono solo CSS?
- Sì. Ognuno è uno span (con qualche span figlio vuoto per i modelli a punti e a barre) più un'animazione CSS. Niente JavaScript, niente SVG, niente immagini, niente web font.
- Serve JavaScript per farli funzionare?
- No. L'animazione parte appena l'elemento è nel documento. Ti serve del codice solo per decidere quando mostrarlo e nasconderlo.
- Posso cambiare velocità e colore?
- Sì: dimensione, spessore del tratto, durata dell'animazione, colore principale e colore del binario sono tutti controlli di questa pagina e finiscono direttamente nel frammento che copi.
- E chi preferisce meno movimento?
- Ogni frammento generato termina con una media query prefers-reduced-motion che di fatto ferma l'animazione: l'indicatore compare comunque, ma non gira per chi ha ridotto il movimento a livello di sistema.
- Il codice viene generato in locale?
- Sì. Le impostazioni, l'anteprima e i frammenti generati restano nel tuo browser; non viene caricato nulla.