## 5.2 - Proprieta' di carattere

Nell'insieme di tutte le proprieta' dei fogli di stile, quelle di carattere sono certamente tra le piu' utili. Teoricamente ogni documento HTML include un testo che viene spesso utilizzato in contesti differenti. Dalla varieta' di contesti differenti nasce la necessita' di avere a disposizione molti caratteri, stili e dimensioni di caratteri diversi. I fogli di stile sono appunto il meccanismo per specificare la varieta' dell'aspetto del testo.

La proprieta' `font-family` viene utilizzata per specificare un elenco di nomi di carattere. Il browser utilizza il primo carattere supportato nell'elenco. Per esempio, si potrebbe avere la seguente riga:

`font-family: Arial, Helvetica, Courier`

In questo caso il browser utilizza `Arial`, a patto pero' che lo supporti. In caso contrario il browser passa ad `Helvetica`, e se non lo supporta passa infine al `Courier`.

Se il browser non supporta alcuno dei caratteri specificati, allora opta per un'alternativa. E' possibile specificare un carattere generico in una famiglia di caratteri. I caratteri generici possibili e alcuni esempi sono mostrati nella seguente tabella.

Nome Generico | Esempio
--- | ---
Serif | Times New Roman
Sansserif | MS Arial, Helvetica
Cursive | Caflish Script, Sanvico
Fantasy | Critter, Cottonwood
Monospace | Courier, Prestige

Ciascun browser ha un carattere definito per ognuno dei nomi generici elencati

Se il nome del carattere e' costituito da piu' di una parola, l'intero nome va delimitato da virgolette singole, come nell'esempio sotto:

`font-family = 'Times New Roman'`

Nella pratica si puo' anche fare meno di inserire le virgolette, ma e' comunque opportuno utilizzarle perche' possono rivelarsi utili in futuro.

La proprieta' `font-size` svolge la funzione indicata dal proprio nome. Ad esempio la riga seguente imposta le dimensioni del carattere a 10 punti:

`font-size: 10pt`

Eistono molti valori `font-size` relativi: `xx-small, medium, large, x-large, xx-large`. `Font-size` puo' anche assumere il valore `smaller`.

La proprieta' `font-style` viene utilizzata il piu' delle volte per specificare il corsivo, come nel prossimo esempio:

`font-style: italic`

I valore `oblique` e' l'alternativa a `italic`, ma non ha una grande utilita' perche' i due stili, una volta visualizzati, sno praticamente identici.

La proprieta' `font-weighht` viene utilizzata per specificare il grado di grassetto:

`font-weight: bold`

Altri valori possibili di tale proprieta' sono `normal, bolder, lighter`.

Nel caso in cui si debba specificare piu' di una proprieta' di carattere, i valori possono venire elencati come i valore della proprieta' `font`. E' i browser a determinare le proprieta' da assegnare in base alle forme dei valori. Si consideri questa riga:

`font: bold 14pt 'Times New Roman' Palatino`.

La riga specifica che il peso del carattere deve corrispondere al grassetto, le dimensioni a 14 punti e che deve venire utilizzato Times New Roman, o in altrenativa Palatino.

L'ordine con cui i valori di proprieta' vengono inseriti in un elenco di valori `font` e' rilevante. Lo stile e il peso del carattere devono essere elencati per primi, seguiti dalle dimensioni e da un elenco dei nomi dei caratteri. In un elenco di caratteri sono richieste solo le dimensioni e la famiglia di caratteri.

Il seguente esempio di documento HTML illustra alcuni degli aspetti delle specifiche dei fogli di stile relativi alle caratteristiche dei caratteri nelle intestazioni e nei paragrafi

Esempio 1: Font Properties nei CSS ---- Rendering dell'esempio