2012-10-24 11 views
10

Sto per eseguire aggiornamenti alle pagine Web e ai file css nel nostro ambiente di produzione. Vorrei evitare la memorizzazione nella cache del css nel browser Web, poiché altrimenti si interromperebbe la progettazione se il nuovo html viene utilizzato insieme al vecchio css. Ho fatto modifiche a tre CSS-files in totale:I file css di @import verranno ancora memorizzati nella cache se il file css padre utilizza querystring

  • principale css file (si fa riferimento nella sezione head della pagina con tag)
  • CSS-file di A (si fa riferimento all'interno del CSS-file principale utilizzando @import "css-fileA.css" sintassi)
  • css file B (riferimento all'interno del CSS-file principale utilizzando @import "css-fileB.css" sintassi)

Per evitare il caching del browser ho aggiunto una querystring al mio file css principale come: ... link href = "main.css? rev = 20121024" ...

Ora mi chiedo se l'uso di una querystring su main.css aiuta a prevenire il caching dei file css A e B a cui si fa riferimento all'interno di main.css con le istruzioni @import? O devo anche applicare querystrings per loro come @import "css-fileA.css? Rev = 20121024"?

Qualsiasi aiuto è molto apprezzato.

risposta

8

Mi aspetto che ogni file venga trattato in modo indipendente. Perché farebbe la differenza se css-fileA.css è stato caricato direttamente o tramite @import? È sempre lo stesso URL e la cache dovrebbe essere utilizzata allo stesso modo.

+1

Grazie per la risposta! Ho provato lo scenario e ho scoperto che avevi ragione. Ogni file css viene trattato in modo indipendente, il che significa che è necessario aggiungere una querystring a ciascun file css importato come: @import "css-fileA.css? Rev = 20121025" – gurkan

Problemi correlati