Le proprietà CSS mostrate in questo tutorial consentono di personalizzare le liste. Le specifiche riguardano gli elementi HTML ul e ol. Potete quindi adattare le liste ordinate e non ordinate secondo i vostri desideri.
Informazioni generali sulle liste
Con list-style
si raggruppano le seguenti tre proprietà:
• list-style-type
• list-style-position
• list-style-image
Attraverso list-style
è possibile influenzare il tipo di presentazione grafica dei punti elenco prima delle enumerazioni e i loro margini. Le specifiche menzionate sono elencate separatamente da una virgola. L'ordine non ha importanza. Inoltre, non è necessario specificare un valore per ogni proprietà.
Un esempio:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>PSD-Tutorials.de</title> <style> ul { list-style:square; } </style> </head> <body> <ul> <li>HTML</li> <li>CSS</li> <li>JavaScript</li> </ul> </body> </html>
Nel browser appare così:
Simboli di elencazione grafica
È possibile specificare una propria immagine come simbolo di elencazione. Per farlo si utilizza la proprietà list-style-image
. I valori seguenti sono ammessi:
• url
– il nome del file e opzionalmente il percorso dell'immagine
• none
– nessuna immagine viene visualizzata.
Un esempio:
ul { list-style-image: url(bullet.gif); }
Fate attenzione che il percorso dell'immagine specificato con URL sia corretto.
Se viene specificato un percorso errato, i browser dovrebbero ricorrere a un simbolo di elencazione predefinito.
La posizione dei simboli di elencazione
Con list-style-position
si stabilisce come devono comportarsi le numerazioni o i simboli di elencazione rispetto alla rientranza.
• inside
– la prima riga viene rientrata tanto da far combaciare simboli di elencazione e voce di elenco a sinistra.
• outside
– il simbolo di elencazione si trova a sinistra della voce di elenco.
Nell'esempio seguente vengono utilizzati i due valori inside
e outside
.
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>PSD-Tutorials.de</title> <style> ul.a { list-style-position:inside; } ul.b { list-style-position:outside; } </style> </head> <body> <p>Una lista con inside:</p> <ul class="a"> <li>HTML</li> <li>CSS</li> <li>JavaScript</li> </ul> <p>Una lista con outside:</p> <ul class="b"> <li>HTML</li> <li>CSS</li> <li>JavaScript</li> </ul> </body> </html>
In questo modo è possibile vedere direttamente le diverse conseguenze che questi due valori hanno effettivamente.
Personalizzare l'aspetto dei simboli di elencazione
Per i simboli di elencazione è possibile specificare esplicitamente l'aspetto. È inoltre possibile influenzare la visualizzazione delle liste numerate. Si utilizza la proprietà list-style-type
. Tra i valori ammessi per questa proprietà ci sono i seguenti:
• decimal
– per le liste ol
: numerazione 1, 2, 3 ecc.
• lower-roman
– per le liste ol
: numerazione i., ii., iii. ecc.
• upper-roman
– per le liste ol
: numerazione I., II., III., IV ecc.
• lower-alpha
o lower-latin
– per le liste ol-
: numerazione I., II., III., IV. ecc.
• upper-alpha
o upper-latin
– per le liste ol
: numerazione A., B., C., D. ecc.
• disc
– per le liste ul
: cerchio pieno come simbolo di elencazione
• circle
– per le liste ul
: cerchio vuoto come simbolo di elencazione
• square
– per le liste ul
: rettangolo come simbolo di elencazione
• none
– né simboli di elencazione né numerazione
• lower-greek
– per le liste ol
: numerazione con lettere greche
• hebrew
– per le liste ol
: numerazione con lettere ebraiche
• decimal-leading-zero
– per le liste ol
: numerazione con zero iniziale 0: 01., 02., 03., 04. ecc.
• cjk-ideographic
– per le liste ol
: numerazione con caratteri ideografici
• hiragana
– per le liste ol
: numerazione giapponese (con lettere minuscole)
• katakana
– per le liste ol
: numerazione giapponese (con lettere maiuscole)
• hiragana-iroha
– per le liste ol
: numerazione giapponese (con lettere minuscole)
• katakana-iroha
– per le liste ol
: numerazione giapponese (con lettere maiuscole)
Nell'esempio seguente vengono utilizzate alcune delle varianti elencate.
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>PSD-Tutorials.de</title> <style> ul.a { list-style-type:circle; } ul.b { list-style-type:square; } ol.c { list-style-type:upper-roman; } ol.d { list-style-type:lower-alpha; } </style> </head> <body> <ul class="a"> <li>HTML</li> <li>CSS</li> <li>JavaScript</li> </ul> <ul class="b"> <li>HTML</li> <li>CSS</li> <li>JavaScript</li> </ul> <ol class="c"> <li>HTML</li> <li>CSS</li> <li>JavaScript</li> </ol> <ol class="d"> <li>HTML</li> <li>CSS</li> <li>JavaScript</li> </ol> </body> </html>
Nel browser si ottiene l'immagine seguente:
Contatori
Attraverso le liste ol
è possibile numerare i contenuti. Tuttavia, in applicazioni più complesse, questa forma di numerazione non è realmente praticabile. Per questo, CSS offre un'alternativa con i contatori.
Di seguito vi mostro come utilizzare i contatori.
Innanzitutto, creo un nuovo contatore per l'elemento body
.
body { counter-reset: capitolo; }
Grazie a questa definizione, il contatore capitolo esiste nel documento. Questo contatore può quindi essere utilizzato.
h1 { counter-increment: capitolo; }
Attraverso la sintassi mostrata, il contatore viene automaticamente incrementato di 1 ogni volta che appare un nuovo elemento h1
. Tuttavia, al momento non si vede ancora nulla della numerazione. Questo problema viene risolto facilmente utilizzando i pseudo-elementi.
h1::before { content: counter(capitolo) ". "; }
Un'applicazione completa potrebbe apparire così:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>PSD-Tutorials.de</title> <style> body { counter-reset: capitolo; } h1 { counter-increment: capitolo; } h1::before { content: counter(capitolo) ". "; } </style> </head> <body> <h1>Capitolo</h1> <h1>Capitolo</h1> </body> </html>
Ecco come appare il risultato nel browser:
Negli esempi è mostrato come i contatori siano potenti.