Abbiamo ora aggiunto l’opzione per aggiungere un SVG, statico o animato, come immagine della schermata di avvio per sostituire questo indicatore predefinito di puntini di caricamento:
Nota che per motivi di prestazioni, gli SVG animati dovrebbero utilizzare solo animazioni di trasformazione CSS o di opacità. [1]
È possibile abilitare questa funzionalità tramite il nostro sistema Upcoming Changes ( /admin/config/upcoming-changes):
Per questo viene utilizzata l’impostazione del sito splash screen image. È possibile utilizzare le variabili CSS var(--primary), var(--secondary) e var(--tertiary) all’interno del proprio SVG per fare riferimento ai colori del tema e adattarsi alla modalità scura.
È importante notare che l’abilitazione di questa funzionalità potrebbe avere un impatto sul punteggio LCP, quindi la cosa migliore per provare è apportare la modifica, attendere un po’ e verificare se ha un impatto su LCP o sull’indicizzazione nella Google Search Console.
Inizialmente abbiamo tentato di consentire elementi di animazione SMIL (\u003canimate\u003e, \u003canimateTransform\u003e, ecc.), ma queste animazioni vengono messe in pausa dal browser quando viene eseguito javascript, causando scatti. Le animazioni CSS di trasformazione e opacità non sono bloccate da JS ed evitano questo problema. ↩︎
Al momento non abbiamo un modo per aggiungere CSS personalizzato perché questa schermata viene caricata prima di gran parte dell’app e ci sono molti più vincoli. Puoi condividere qui l’immagine SVG che stai utilizzando (o inviarmela in privato)? Potrei fare dei test e vedere se le nostre impostazioni predefinite potrebbero essere più adatte.
Si noti che c’è una leggera modifica in ciò che stiamo consentendo per l’animazione SVG (e ho aggiornato l’OP per rifletterlo). Inizialmente stavamo consentendo le animazioni SMIL negli SVG, ma si scopre che queste hanno dei singhiozzi perché il browser mette in pausa questo tipo di animazione mentre viene eseguito javascript.
Quindi, invece, la raccomandazione è di utilizzare solo animazioni di trasformazione CSS e opacità nei tuoi SVG, poiché queste non sono bloccate da JS.
Se dai un’occhiata all’SVG di @ばこん sopra… fornisce un buon esempio di un’animazione consentita:
Fai anche attenzione a dare alle tue animazioni nomi univoci in modo che non entrino in conflitto con altre animazioni in Discourse (nomi come “blink”, “rotate”, “fade” ecc. potrebbero essere troppo generici). Usare un prefisso come unique- è un ottimo modo per evitarlo.