Generatore di CSS per spinner di caricamento

Avanti

Uno spinner di caricamento mostra ai visitatori che una pagina, un pannello o un pulsante sta ancora lavorando. Imposta qui sotto dimensione, spessore dell’anello, colore e velocità, controlla l’anteprima e copia il CSS dello spinner di caricamento finito nel tuo foglio di stile.

Come ottenere il CSS dello spinner di caricamento

  1. 1

    Scegli una dimensione

    Inserisci il diametro in pixel. Intorno a 40 e 60 per un'area di contenuto, meno per l'uso in linea.

  2. 2

    Scegli spessore e colore

    Imposta lo spessore dell'anello in pixel e scegli il colore dell'arco in movimento con il campo colore.

  3. 3

    Imposta la velocità

    Inserisci i secondi per un giro completo. 1 è un valore predefinito comune.

  4. 4

    Copia il CSS

    Usa il pulsante di copia accanto al riquadro CSS e incolla le regole nel tuo foglio di stile.

Cosa ottieni

Il generatore scrive due regole: una classe .loader e un blocco @keyframes spin. La classe disegna un cerchio, gli dà un anello grigio chiaro e colora il bordo superiore di quell’anello. I keyframes fanno compiere al cerchio una rotazione completa, e la riga animation la ripete all’infinito. Non serve altro: nessun file immagine, nessun font di icone e nessuno script.

Con i valori predefiniti (60 px, anello da 6 px, #10b981, 1 secondo) l’output è questo:

.loader {
  width: 60px;
  height: 60px;
  border: 6px solid #eee;
  border-top-color: #10b981;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}
@keyframes spin {
  to { transform: rotate(360deg); }
}

Aggiungilo alla tua pagina

Incolla il CSS nel tuo foglio di stile, poi aggiungi un elemento vuoto dove deve comparire il loader:

<div class="loader" role="status" aria-label="Caricamento"></div>

Mostra l’elemento mentre il lavoro è in corso e rimuovilo, oppure nascondilo con display: none, quando arriva il contenuto. Gli attributi role e aria-label permettono agli screen reader di annunciare lo stato.

Dimensioni che funzionano

Dove si trova Dimensione Spessore
Dentro un pulsante piccolo Da 16 a 20 px 2 px
Accanto a una riga di testo Da 20 a 28 px 3 px
Card o pannello Da 40 a 60 px Da 4 a 6 px
Centrato su una pagina vuota Da 60 a 100 px Da 6 a 8 px

Una regola pratica è uno spessore di circa un decimo del diametro. Molto più sottile appare debole sugli schermi ad alta risoluzione, molto più spesso trasforma l’anello in una macchia.

Cose da sapere

  • Il colore della traccia è fisso sul grigio chiaro (#eee). Su uno sfondo scuro, modifica questo valore nel CSS incollato.
  • Lo strumento crea un unico spinner circolare. Punti, barre e altre forme richiedono un markup diverso.
  • Se nel tuo progetto esistono già una classe chiamata loader o un’animazione chiamata spin, rinominale nel CSS incollato per evitare conflitti tra le regole.

Mostrare e nascondere lo spinner

Uno spinner di caricamento deve comparire quando il lavoro inizia e scomparire quando finisce. Uno schema semplice consiste nel tenere un attributo hidden sull’elemento e rimuoverlo quando parte una richiesta. Se l’attesa è di solito molto breve, aggiungi un piccolo ritardo di alcune centinaia di millisecondi prima di mostrare l’anello, così le risposte immediate non fanno lampeggiare lo spinner. Qualunque scelta tu faccia, nascondi sempre lo spinner anche in caso di errore, altrimenti i visitatori aspetteranno qualcosa che è già fallito.

Domande frequenti

Sì. L’output è CSS semplice, con una classe e una regola keyframes, quindi funziona in qualsiasi foglio di stile o blocco di stile, con qualunque back end.

Tieni l’elemento nascosto per impostazione predefinita e mostralo quando la richiesta parte. Nascondilo di nuovo quando la richiesta termina. Lo controlli con un cambio di classe o un attributo hidden nel tuo codice.

Il CSS generato colora solo il bordo superiore del cerchio. Quando il cerchio ruota, quell’unico arco colorato percorre l’anello grigio chiaro, creando l’effetto di rotazione.

Sì. Ogni valore è una normale proprietà CSS, quindi puoi modificare direttamente nel tuo foglio di stile larghezza, bordo, colore o durata dell’animazione.

Strumenti correlati

Strumento disponibile in altre lingue

Guide e casi d'uso