In breve
- Un video di sfondo per un sito web è un video muto e in loop che scorre dietro una sezione, di solito la hero, mentre testo e pulsanti stanno sopra.
- In genere i browser permettono la riproduzione automatica di un video solo se è muto, e gli iPhone richiedono anche l’attributo playsinline per tenerlo dentro la pagina.
- Un’immagine poster deve comparire prima che il video si carichi e ogni volta che non può essere riprodotto, quindi deve sembrare un design finito anche da sola.
- Chi chiede meno movimento dovrebbe vedere il poster fermo, e i contenuti in movimento che durano più di cinque secondi richiedono un modo per metterli in pausa.
- Loop brevi, lenti e silenziosi si comprimono molto meglio di riprese movimentate, e questo mantiene veloce la pagina.
In questa pagina
In un video di sfondo per un sito web, un video muto e in loop scorre dietro una sezione, il più delle volte la hero, mentre titolo e pulsanti stanno sopra. Fatto bene, è leggero, silenzioso e facoltativo: parte in automatico senza audio, mostra un’immagine fissa finita prima di caricarsi, si ferma per chi preferisce meno movimento e non rende mai le parole più difficili da leggere. Fatto male, è la cosa più pesante e dispersiva della pagina.
Quando vale la pena usare un video di sfondo
Un video di sfondo si guadagna il posto quando il movimento è il messaggio: l’acqua per una scuola di nuoto, il vapore per una torrefazione, una materia che scorre lenta per un brand la cui estetica è la sua identità. Se il movimento è solo decorazione, un’alternativa più leggera di solito rende altrettanto bene. Confronta le opzioni prima di decidere.
| Opzione | Peso della pagina | Ideale per |
|---|---|---|
| Immagine fissa | Leggero | Fotografia, e pagine in cui la velocità conta più di tutto |
| Gradiente CSS animato | Quasi nulla | Derive semplici e cambi di colore |
| Shader WebGL | Download leggero, usa la GPU | Texture vive, grana e flusso |
| Video | Pesante, a meno che sia breve e lento | Riprese reali, o movimento che deve apparire identico ovunque |
L’HTML per un video di sfondo
Quattro attributi fanno il lavoro essenziale. muted permette al browser di avviarlo in automatico, dato che in genere i browser bloccano la riproduzione automatica con audio. playsinline impedisce a un iPhone di aprirlo a schermo intero. loop lo ripete, e poster mostra un’immagine fissa mentre si carica. Poiché è decorativo, nascondilo agli screen reader.
<section class="hero">
<video class="hero-video" autoplay muted loop playsinline
poster="/media/hero-poster.jpg" aria-hidden="true">
<source src="/media/hero.webm" type="video/webm">
<source src="/media/hero.mp4" type="video/mp4">
</video>
<div class="hero-content">
<h1>Colour that moves with you</h1>
<button class="hero-pause" type="button">Pause background</button>
</div>
</section>.hero {
position: relative;
min-height: 80vh;
overflow: hidden;
background: #120a2e; /* shows before the poster arrives */
}
.hero-video {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover; /* fills any shape without stretching */
}
.hero-content {
position: relative; /* sits above the video */
}object-fit: cover ritaglia il video per qualsiasi forma di schermo. Tieni la parte importante della ripresa vicino al centro.La guida di MDN all’elemento video elenca ogni attributo. Ricorda che la riproduzione automatica è una richiesta, non una garanzia: alcuni telefoni in modalità risparmio energetico non la avviano. Per questo il poster deve sembrare un design finito anche da solo.
Mantenere leggero il file video
Il video è di solito il file più grande di qualsiasi pagina che ne abbia uno. Le riprese morbide e lente si comprimono molto meglio di quelle nitide e movimentate, quindi la scelta di design è anche una scelta di prestazioni. Tieni il loop breve, intorno agli 8 a 15 secondi, rimuovi del tutto la traccia audio e non servire una dimensione più grande di quella che la hero mostra davvero. Fissa un budget di peso prima di esportare, e verifica il risultato reale nel pannello di rete del browser.
# MP4 (H.264): silent, web-ready, starts playing before it fully downloads
ffmpeg -i hero-master.mov -an -c:v libx264 -crf 26 -preset slow \
-pix_fmt yuv420p -movflags +faststart -vf "scale=1920:-2" hero.mp4
# WebM (VP9): often smaller at similar quality
ffmpeg -i hero-master.mov -an -c:v libvpx-vp9 -crf 36 -b:v 0 \
-vf "scale=1920:-2" hero.webm
# Poster: the first frame as a JPEG
ffmpeg -i hero.mp4 -frames:v 1 -q:v 3 hero-poster.jpg-an rimuove l’audio; un valore CRF più alto significa un file più piccolo e più morbido. Alzalo finché non vedi artefatti, poi torna indietro di un passo.
Hero del sito 1920 × 1080
1920 × 1080

Ritaglio per telefono
1080 × 1920
object-fit: cover mostra solo una fetta verticale dal centro, quindi componi tenendone conto.Movimento ridotto e un pulsante di pausa
Alcuni visitatori impostano il dispositivo per ridurre il movimento perché li fa sentire storditi o male. Rispettalo mostrando il poster al posto del video. A parte questo, il criterio WCAG Pause, Stop, Hide chiede che i contenuti in movimento che partono da soli e durano più di cinque secondi, accanto ad altri contenuti, si possano mettere in pausa. Un piccolo pulsante di pausa visibile basta.
const video = document.querySelector('.hero-video')
const button = document.querySelector('.hero-pause')
const reduce = matchMedia('(prefers-reduced-motion: reduce)')
function follow() {
if (reduce.matches) video.pause()
else video.play().catch(() => {}) // the browser may still refuse
}
reduce.addEventListener('change', follow)
follow()
button.addEventListener('click', () => {
if (video.paused) {
video.play()
button.textContent = 'Pause background'
} else {
video.pause()
button.textContent = 'Play background'
}
})Il movimento ridotto spiega l’impostazione e cos’altro ridurre.
Testo leggibile su un video di sfondo
Il testo sopra un video deve leggersi su ogni fotogramma, non solo sul poster. La soluzione abituale è una velatura scura su tutto il video, che funziona ma lo appiattisce. Opzioni migliori: scegli riprese calme con una zona quieta dove vanno le parole, tieni il movimento più luminoso lontano dal titolo e usa un peso grande e marcato. La nostra guida al testo su immagine ha sette tecniche che valgono anche per il video.
Una materia movimentata che attraversa il titolo…
…e la stessa hero con la parte calma del campo dietro le parole.
Checklist per il video di sfondo
- 1
Decidi se deve proprio essere un video
Riprese reali, o movimento che deve apparire identico ovunque. Altrimenti valuta il CSS o uno shader.
- 2
Tienilo breve, lento e silenzioso
Da 8 a 15 secondi, nessuna traccia audio, un loop che combacia.
- 3
Esporta due formati e un poster
WebM e MP4, non più grandi di come vengono mostrati, più un primo fotogramma fisso.
- 4
Usa i quattro attributi
autoplay,muted,loop,playsinline, conposterearia-hidden. - 5
Rispetta le preferenze sul movimento
Mostra il poster per il movimento ridotto e aggiungi un pulsante di pausa.
- 6
Prova su un telefono vero
Controlla il tempo di caricamento con i dati mobili, la modalità risparmio energetico e il ritaglio verticale.
Per il design della hero in sé, vedi gli sfondi per la hero di un sito. Se il tuo sfondo in movimento è un Mark di Gradiently, puoi esportarlo come video MP4 in loop fino a 1080p e usarlo esattamente così.
Le domande più frequenti
Perché il mio video di sfondo non parte in automatico?
In genere i browser bloccano la riproduzione automatica con audio, quindi aggiungi l’attributo muted. Su iPhone aggiungi anche playsinline, e ricorda che le modalità di risparmio energetico possono comunque bloccarla, quindi un buon poster conta.
Un video di sfondo rallenta il sito?
Può farlo, perché il video è di solito il file più grande della pagina. Loop brevi, lenti e silenziosi della giusta dimensione, in WebM e MP4, contengono il costo.
Quali dimensioni deve avere il video di sfondo di un sito?
Master a 1920 × 1080, senza servirlo più grande di come viene mostrato. Le riprese morbide e astratte spesso rendono bene anche a una risoluzione più bassa.
I video di sfondo devono essere accessibili?
Sì. Nascondi i video decorativi agli screen reader, mostra un’immagine fissa a chi chiede meno movimento e offri un controllo di pausa per il movimento che dura più di cinque secondi.
Qual è un’alternativa più leggera a un video di sfondo?
Un gradiente CSS animato o uno shader WebGL possono creare un movimento astratto con un download molto più piccolo, anche se gli shader usano il chip grafico mentre sono in esecuzione.
Scritto da Gradiently
Il team dietro Gradiently, uno strumento di design costruito attorno ai Mark: gradienti vivi che fanno sembrare tuo tutto ciò che progetti.
Vedi il nostro profilo


