# 3- Fogli di Stile a cascata

I fogli di stile a cascata sono stati sviluppati da W3C in tempi relativamente recenti, e rappresentano un metodo potente e flessibile per controllare i dettagli di presentazione dei documenti.

Nelle prossime lezioni descriveremo in dettaglio le proprieta' di stile supportate e utilizzate piu' frequentemente, nonche' i valori a esse associati.

A molti tag HTML corrispondono delle proprieta' di presentazione per le quali i browser utilizzano spesso valori predefiniti, nel caso in cui i tag non specifichino alcun valore. Per esempio, per la proprieta' `font-size` del tag `<h2>` il browser potrebbe avere impostato il valore predefinito di 30 punti. Un foglio di stile puo' modificare tale valore portandolo a 26 punti per una occorrenza del tag `<h2>` o per tutte le sue occorrenze nel documento.

Alcuni compiti affidati ai fogli di stile possono venire svolti da attributi di tag, tag di stile e di dimensione del carattere, come `<big>`. Tuttavia per una maggiore precisione e coerenza e' preferibile utilizzare i fogli di stile. Inoltre la maggior parte degli attributi impiegati per descrivere la presentazione di un documento e' stata "deprecata" (dal W3C) in favore dei fogli di stile.

L'idea dei fogli di stile non e' nuova. I programmi di elaborazione testi e i sistemi di desktop publishing li utilizzano da tempo per impostare uno stile particolare per i documenti.

Le prime specifiche dei fogli di stile per i documenti HTML, chiamate Cascading Style Sheets (CSS1), vennero sviluppate nel 1996 da W3C. Verso la meta' del 1998 comparve il secondo standard CSS2, mentre CSS3 e' in via di realizzazione. I produttori di browser implementarono rapidamente alcune delle funzioni di questi standard, ma sono stati molti piu' lenti ad implementarle tutte. Noi descriveremo solo le funzioni dei fogli di stile largamente implementate dai browser correnti.

Il vantaggio piu' rilevante offerto dai fogli di stile e' che consentono di impostare una certa coerenza nello stile delle pagine Web. Per esempio, i fogli di stile permettono al programmatore di specificare che tutte le occorrenza di un particolare tag utilizzino lo stesso stile di presentazione.

I fogli di stile HTML, sono chiamati fogli di stile a cascata perche' possono venire definiti a tre livelli differenti per specificare lo stile del documento. I fogli di stile di livello basso possono avere la precedenza su quelli di livello superiore, per cui lo stile del contenuto del tag e' determinato da una cascata di applicazioni di fogli di stile.