STATUS IS UPWIKI DI OTTIMIZZAZIONE DEL SITO
18Accelera
Prestazioni e distribuzione / Accelera

Immagini responsive con srcset e sizes

Aiuta il browser a selezionare un’immagine che corrisponde allo slot di layout effettivo invece di inviare a ogni visitatore l’originale sovradimensionato.

Immagini responsive con srcset e sizes — GUIDA VISIVA
LEGGI
8 minuti
FONTI
6
RIVALIDA
2027-03-27
rivisto
Revisore prestazioni web e accessibilità
LA RISPOSTA BREVE

Inizia dalla decisione.

Usa srcset e sizes quando la stessa immagine appare a larghezze renderizzate diverse in un layout responsive. srcset elenca i candidati immagine e le loro larghezze intrinseche; sizes descrive la larghezza prevista dello slot immagine per ogni condizione di layout. Il browser usa questa stima della sorgente insieme alla densità di display, allo zoom e ad altre condizioni per selezionare un candidato. Una scheda mobile piccola può così evitare di scaricare l’originale desktop, mentre un display grande o ad alta densità può scegliere un candidato più nitido quando disponibile.

Inizia dal layout CSS del componente, non da una lista generica di dispositivi. Misura lo slot ad ogni breakpoint, genera candidati veritieri e fai sì che sizes rifletta quello slot. Usa i descrittori x solo per uno slot CSS fisso. Usa picture quando uno schermo più piccolo necessita di un ritaglio diverso, invece che solo di un file più piccolo. Verifica la richiesta reale con un reload a cache vuota. Questa ottimizzazione proattiva della consegna riduce il trasferimento di immagini evitabile prima del rilascio, ma non garantisce velocità, disponibilità o l’affidabilità dell’host delle immagini.

GUIDA VISIVA

Vedi il lavoro come un sistema.

Usa questa mappa per collegare le decisioni dell'articolo prima di agire su singole tattiche.

SIUAccelera
01Scegli il pattern corretto
02Comprendi come sizes guida la selezione
03Deriva i candidati dal layout reale
04Usa picture per art direction
01

Scegli il pattern corretto

Il resolution switching mantiene la composizione invariata e offre diverse larghezze di file. È il pattern abituale per foto prodotto, figure editoriali e card. Usa descrittori di larghezza come 480w o 1200w quando la larghezza renderizzata cambia con il layout. Il numero è la larghezza reale in pixel del file, non un target telefonico o un comando CSS.

Il density switching serve uno slot CSS fisso con più pixel sorgente per un display ad alta densità. I suoi descrittori sono 1x, 1.5x o 2x, e si adatta a un logo o un’icona che è costantemente, ad esempio, larga 160 CSS pixel. Non mischiare descrittori di larghezza e di densità in uno stesso srcset.

Slot fluido

Usa i descrittori w con sizes quando un componente cresce o si restringe.

Slot fisso

Usa i descrittori x senza sizes solo quando la dimensione CSS renderizzata è stabile.

02

Comprendi come sizes guida la selezione

Con i descrittori di larghezza, il browser valuta sizes prima di scaricare un’immagine. Ogni voce abbina una condizione media opzionale a una lunghezza. La prima condizione che corrisponde fornisce la source size; la lunghezza incondizionata finale è il fallback. sizes è un suggerimento per la selezione, non una regola CSS.

Il browser confronta quella source size con le larghezze dei candidati per calcolare una densità effettiva, poi può considerare la densità del display, lo zoom e le condizioni di rete. Non è obbligato a scegliere il nome file matematicamente più vicino. Fornisci candidati onesti e una stima attendibile dello slot; la decisione finale della selezione rimane del user agent.

L’ordine conta

La prima condizione media che corrisponde vince, quindi scrivi la lista nell’ordine che rende corretta quella prima corrispondenza.

Evita il blanket 100vw

Una card desktop di un terzo della larghezza descritta come viewport-wide può attivare un candidato inutilmente grande.

03

Deriva i candidati dal layout reale

Fai l’inventario dei componenti, non delle pagine. Un hero, una figura editoriale, una galleria prodotto, una miniatura di ricerca e il logo del footer spesso hanno larghezze di slot diverse. Per ognuno, registra la larghezza renderizzata più stretta e più ampia, il rapporto d’aspetto, il comportamento di ritaglio e la visibilità nella schermata iniziale.

Genera larghezze attorno all’intervallo di slot significativo del componente, con un’opzione più grande quando il dettaglio giustifica il rendering ad alta densità. File praticamente identici aggiungono complessità a build e cache; solo un file molto piccolo e uno molto grande costringono a compromessi. Testa gli URL generati invece di presumere che le trasformazioni immagine funzionino.

Mantieni un src di fallback valido e valori width e height che corrispondono al rapporto consegnato. Riservano spazio ma non impediscono al CSS responsive di cambiare le dimensioni finali.

Descrittori veritieri

Un candidato dichiarato come 800w deve essere effettivamente largo 800 pixel.

Contratto del componente

Mantieni lo slot e il piano dei candidati insieme ai cambi di template e design.

04

Usa picture per art direction

L’art direction cambia la composizione, non solo la dimensione del file. Una foto paesaggio larga potrebbe aver bisogno di un ritaglio in formato verticale su uno schermo stretto in modo che il soggetto rimanga visibile. L’elemento picture può offrire opzioni di sorgente specifiche per media, seguite da un singolo img di fallback. Il browser considera media, type e srcset di ogni source; l’img porta il testo alternativo, le dimensioni e il comportamento di fallback.

Prepara ogni ritaglio con revisione editoriale e di accessibilità. Un ritaglio mobile può rimuovere un dettaglio del prodotto o una persona menzionata nel testo alternativo. Metti alt su img e descrivi le informazioni o la funzione che l’immagine trasmette. Usa alt="" solo per un’immagine genuinamente decorativa; per un’immagine linkata o un pulsante, descrivi l’azione invece dell’aspetto. Non introdurre picture quando il ritaglio non cambia: un ordinario srcset basato sulla larghezza è più semplice.

Buon uso

Un hero desktop affollato ha bisogno di un ritaglio in formato verticale distinto per un telefono.

Sorgenti di formato

Una source in picture può offrire un hint di type e preservare un img di fallback ampiamente utilizzabile.

05

Evita costosi errori di caricamento e markup

Lo spreco consueto è copiare sizes="100vw" su ogni immagine. Può adattarsi a una figura stretta a tutta larghezza ma non a un contenitore con cap, o a una card desktop limitata. Il fallimento opposto è avere sizes obsolete dopo un redesign. Cambia CSS e sizes insieme.

Non lazy-loadare un’immagine importante nel contenuto inizialmente visibile. Le linee guida raccomandano il lazy loading per le immagini sotto la piega e di mantenere eager l’hero visibile. Fetch priority può elevare un’immagine veramente vitale, ma regole ampie di alta priorità o preload possono penalizzare le prestazioni. Non fare affidamento su nomi file o risultati in cache come prova.

Regressione cache fredda

Un CMS, proxy o cache può nascondere un descrittore sbagliato o una richiesta immagine non intenzionale.

Testo nelle immagini

Non fare dipendere testo essenziale della pagina solo da un ritaglio art-directed.

06

Testa la richiesta, il ritaglio e la riparazione

Testa pagine rappresentative a larghezze che cambiano layout, inclusi appena sopra e appena sotto un breakpoint di griglia. Includi un’impostazione ad alta densità, desktop ampio e stati che alterano lo slot. Conferma dimensioni renderizzate, ritaglio, testo alternativo e nitidezza visiva.

In Chrome DevTools, apri Network, ricarica con cache disabilitata o usa Empty Cache And Hard Reload, filtra le richieste immagine e ispeziona URL, dimensione trasferita, header, initiator e tempi. Throttle per rivelare lavori tardivi o dispendiosi. Registra viewport, device scale factor, slot, candidato, byte trasferiti e risultato atteso.

Quando un template, un breakpoint, un CDN o una pipeline di asset cambia, rendi questo un gate di rilascio. Ripara in modo mirato: correggi sizes, sistema un descrittore, rigenera un ritaglio, ripristina un fallback o rimuovi un preload non necessario. Ritesta con un reload a cache vuota.

Osserva invece di inferire

Il pannello Network registra il candidato effettivamente richiesto.

Limite materiale

Questo verifica il comportamento di consegna dell’immagine, non la capacità dell’origine, la disponibilità del CDN o l’uptime complessivo.

07

Applicalo come controllo di resilienza SIU

Le immagini responsive riducono il trasferimento evitabile ma non possono garantire una richiesta riuscita. Errori di origine, trasformazioni non disponibili, host di terze parti e guasti CDN richiedono pianificazione separata per continuità e recovery.

Per SIU, usa record di test per catturare regressioni di consegna precocemente, identificare il template responsabile o la regola di trasformazione e applicare la più piccola correzione sicura prima del lancio. Abbina questo a un preflight di disponibilità e a un piano di rollback.

Ownership

Assegna un owner per componente e pipeline immagine per ogni controllo di selezione fallito.

AZIONE / VERIFICA

La tua guida pratica alle attività.

  1. 01

    Classifica ogni componente

    Segnala se è fluido, slot fisso, art-directed, decorativo, funzionale o contenuto visibile critico.

    VERIFICA: I record di inventario includono intervallo di slot, regola di ritaglio e owner.
  2. 02

    Misura gli slot

    Ispeziona la griglia in ambiente simile alla produzione a stati stretti, medi e ampi.

    VERIFICA: Le larghezze delle box CSS registrate includono cap, gap e sidebar.
  3. 03

    Scegli i descrittori

    Usa w con sizes per slot fluidi o x per slot fissi; non mescolarli.

    VERIFICA: Ogni srcset usa un solo tipo di descrittore.
  4. 04

    Scrivi sizes dal CSS

    Usa condizioni first-match e un fallback incondizionato che descriva lo slot.

    VERIFICA: Il valore che corrisponde è credibile in ogni viewport testata.
  5. 05

    Valida gli asset

    Verifica che ogni candidato esista e corrisponda alla larghezza intrinseca dichiarata.

    VERIFICA: Le richieste dirette restituiscono i file intenzionati e un fallback valido.
  6. 06

    Riserva spazio

    Fornisci valori width e height corrispondenti e CSS responsive che preservi il rapporto.

    VERIFICA: L’arrivo dell’immagine non causa movimenti evitabili del contenuto circostante.
  7. 07

    Revisiona l’art direction

    Controlla ogni ritaglio specifico per media e il relativo alt dell’img.

    VERIFICA: I soggetti importanti restano visibili e l’alternativa rimane accurata.
  8. 08

    Imposta la priorità deliberatamente

    Lazy-loada le immagini sotto la piega; evita regole ampie di alta priorità e preload.

    VERIFICA: L’hero veramente visibile viene richiesto prontamente senza competizione inutile.
  9. 09

    Cattura evidenza a cache fredda

    Usa il filtro immagini di DevTools, reload con cache disabilitata e viewports rappresentativi.

    VERIFICA: L’evidenza di rilascio registra candidato selezionato, slot, dimensione trasferita e ritaglio.
  10. 10

    Pianifica la rimedio

    Assegna una correzione mirata o un rollback per cambi di template e pipeline immagine.

    VERIFICA: Ogni failure ha un owner e un retest a cache fredda riuscito dopo la correzione.
ARGOMENTI DI DISCUSSIONE

Confronta i compromessi, non i dati privati.

Usa questi spunti con il tuo team o la community dei proprietari di siti. Condividi metodi e lezioni, ma non incollare mai credenziali, dati dei clienti o dettagli infrastrutturali non pubblici.

  1. 01

    Quale componente del tuo sito ha il gap più grande tra i pixel scaricati e il suo solito slot renderizzato, e come potresti misurarlo in modo sicuro?

  2. 02

    Come decidono i vostri designer, i proprietari del CMS e il team frontend quando un ritaglio mobile è art direction invece che un semplice ridimensionamento?

  3. 03

    Quale evidenza renderebbe una regressione delle immagini responsive facile da approvare o rollbackare durante la revisione di lancio senza condividere dati dei clienti?

RISORSE POPOLARI / AUTOREVOLI

Apri il materiale di riferimento.

WHATWGImages in the HTML Standard ↗

Regole primarie per descrittori, selezione della source-size, fallback e scelta del browser.

Rivisto 2026-09-27
MDN Web DocsUsing responsive images in HTML ↗

Guida pratica a srcset, sizes, density switching, art direction e testing.

Rivisto 2026-09-27
web.devResponsive images ↗

Linee guida Google per dimensioni, caricamento, descrittori e vincoli di layout.

Rivisto 2026-09-27
MDN Web Docspicture HTML picture element ↗

Riferimento per selezione media e type, art direction, sizes e fallback.

Rivisto 2026-09-27
Chrome for DevelopersInspect network activity ↗

Istruzioni per richieste, trasferimenti, throttling, filtraggio e reload a cache vuota.

Rivisto 2026-09-27
W3C Web Accessibility InitiativeImages Tutorial ↗

Indicazioni per immagini significative, decorative, funzionali e testuali.

Rivisto 2026-09-27

Politica delle fonti. Le affermazioni sulla sintassi delle immagini responsive e sulla selezione del browser si basano sugli standard ufficiali e sulla documentazione elencata sotto. Valida il markup, le larghezze dei candidati e il layout renderizzato sui template reali del sito prima del rilascio.

Chiarimenti rapidi

Domande comuni.

Ho bisogno di sizes ogni volta che uso srcset?

Usa sizes con descrittori di larghezza perché il browser ha bisogno di una stima della source-size per uno slot fluido. Un srcset a densità fissa usa descrittori x e non richiede sizes. Non mescolare mai i due tipi di descrittore in uno stesso srcset.

sizes cambia la larghezza CSS di un’immagine?

No. sizes è un suggerimento per la selezione prima del download. Il CSS e il layout del componente determinano la box renderizzata, ed è per questo che sizes deve essere mantenuto ogni volta che quel layout cambia.

Ogni immagine responsive dovrebbe usare picture?

No. Usa srcset basato sulla larghezza quando la composizione non cambia tra le dimensioni. Usa picture quando una condizione media richiede un ritaglio diverso o una sorgente in un formato specifico, mantenendo comunque un img di fallback utilizzabile.

Status Is UP Editorial Team · Uptime Enablement Editors

Revisionato da Revisore prestazioni web e accessibilità. Pubblicato 2026-09-27; aggiornato 2026-09-30.