2009-07-25 11 views

risposta

10

La manutenibilità del sito ne risentirà. Combinare solo le immagini che appartengono alla stessa unità logica ed è improbabile che vengano aggiornate separatamente. Mantieni le immagini che probabilmente cambieranno separatamente per cominciare.

1

Abbiamo avuto un momento difficile quando volevamo posizionare l'immagine in modo dinamico.

background-image: url(../images/a.gif); 
background-repeat: no-repeat; 
background-position: left bottom; 

Questo è difficile (se non impossibile) fare utilizzando uno sprite.

3

CSS sprites funziona male per <input type="text"> in cui l'utente può inserire più di uno scatto nella casella, come lo sfondo scorre in alcune versioni di IE.

Inoltre funzionano male se si desidera ripetere il modello.

25

Come tutte le cose, ci sono momenti in cui è utile, e ci sono momenti in cui è dannoso.

Molti sviluppatori preferiscono utilizzare gli sprite CSS perché risparmiano sul tempo richiesto: il browser effettua una richiesta, scarica l'immagine e tutti i vari sprite ora sono automaticamente memorizzati nella cache e sfolgoranti.

Quindi, come può far male?

Perché dimensione di download! = Dimensioni della memoria.

Quel PNG o GIF che è solo 10kb potrebbe effettivamente essere molto, molto più grande in termini di dimensioni una volta che il browser lo carica in memoria. Il problema è che mentre qualcosa come GIF comprime aree di colore solide, il browser la espande in una bitmap, dove tutte le immagini di dimensioni uguali utilizzano una memoria uguale.

E carica una nuova bitmap ogni ora in cui si utilizza quell'immagine da qualche parte.

Quindi tutto con moderazione.

Vedere: http://blog.mozilla.com/webdev/2009/06/22/use-sprites-wisely/ per ulteriori informazioni.

+3

"E carica una nuova bitmap ogni volta che si utilizza quell'immagine da qualche parte." Qualche fonte su questo? – kahoon

1

Possono causare mal di testa per gli utenti se desiderano scaricare una determinata immagine. Per prima cosa non otterranno l'opzione "Salva immagine come". Se capiscono di usare "Visualizza immagine di sfondo", avranno anche un'immagine enorme con molte altre immagini.

Questo è il motivo per cui gli sprites vengono salvati per "utilità" (cioè i pulsanti) o per le immagini di progettazione.

-3

L'utilizzo di un'immagine più grande potrebbe essere un mal di testa ... Quando le foto sono combinate in dimensioni ridotte e le foto adiacenti sono solo 1 o 2 pixel l'una dall'altra, gli sprite CSS possono essere una buona soluzione. Nel nostro caso, http://www.nbhuntop.com, lo usiamo solo per i componenti del menu, tra cui: Home, Informazioni, Prodotti. E tutte le foto sono in formato gif e nessuno scaricherà affatto queste foto.

+4

"Nessuno scaricherà affatto queste foto"? Non sembri capire come funziona il Web. –

-1

Gli sprites non devono mai essere utilizzati quando le dimensioni delle immagini sono molto diverse.
Perché in questo caso la dimensione dello sprite è abbastanza grande.
Recentemente ho convertito le immagini da 3,5 MB in uno sprite e le dimensioni sono state scattate fino a 17 MB!

Problemi correlati