Benvenuti da Idea R | Vicenza - Romano di Lombardia (Bergamo)
Passa alla visualizzazione per i dispositivi mobili

      Idea R - Il tuo sito web primo sui motori di ricerca. Automaticamente con Infrared CMS!

Blog

Prendere uno smanettone del software degli anni 80, aggiungere un graphic designer di nuova generazione e allungare il tutto con uno studioso di strategie di marketing. Agitare energicamente e si ottiene il blog Idea R.

Change language... English

Problemi con la cache dei fogli di stile

Pubblicato il 10/23/2011
Categorie: Siti Web
Problemi con la cache dei fogli di stile

Microsoft IIS esegue un caching dei fogli stile collocati all'interno della cartella App_Themes, memorizzando quelli che sono utilizzati dalle pagine del sito (da tutte le pagine, non solo dalla pagina in questione); l'effetto si vede a occhi nudi guardando il codice HTML generato lato client e notando che sono incusi i link a file CSS che in realtà non sono stati specificati per la pagina in questione.
Questo comportamento, oltre a rendere necessaria una particolare attenzione all'ereditarietà degli stili, rischia di far sforare il numero massimo di tag di style concessi nelle versioni di Internet Explorer anteriori alla 8: in queste versioni infatti il numero massimo di tag di stile è 32 e tutti quelli successivi vengono ignorati.
Il consiglio è di usare la cartella App_Themes solo ed esclusivamente per i temi ed utilizzarne un'altra, ad esempio Styles, per i fogli di stile.

Come anticipato, nel caso fosse necessario usare la cartella App_Themes, bisogna stare attenti a non dare per scontato il valore di una proprietà, ma azzerarla sempre, ad esempio:

/* This is in a not included (but cached) style sheet */
.myStyle
{
    top: 10px;
}

/* This is in a included style sheet */
.myStyle
{
    bottom: 100px;
}

Il risultato sarà:

/* This is in a included style sheet */
.myStyle
{
    top: 10px;
    bottom: 100px;
}

Per evitare di ereditare dalla cache il valore top, il foglio di stile incluso dovrà essere fatto così:

/* This is in a included style sheet */
.myStyle
{
    top: auto;
    bottom: 100px;
}

Sei il lettore numero 9,117.

Commenti

Articolo precedente

Articolo precedente

Cenni sulla Brand Identity

Articolo successivo

Dipingere con la luce

Articolo successivo

Torna all'inizio