I contatori CSS sono "variabili" gestite dai CSS i cui valori possono essere incrementati dalle regole CSS (per tenere traccia di quante volte vengono utilizzati). I contatori ti consentono di regolare l'aspetto del contenuto in base alla sua posizione nel documento.
I contatori CSS sono come "variabili". I valori delle variabili possono essere incrementati dalle regole CSS (che terranno traccia di quante volte vengono utilizzati). Per lavorare con i contatori CSS utilizzeremo le seguenti proprietà:
counter-reset
- Crea o reimposta un contatorecounter-increment
- Incrementa il valore di un contatorecontent
- Inserisce il contenuto generatocounter()
o counters()
- funzione che aggiunge il valore di un contatore a un elementoPer utilizzare un contatore CSS, è necessario prima crearlo con il counter-reset
.
L'esempio seguente crea un contatore per la pagina (nel selettore body
), quindi incrementa il valore del contatore per ogni elemento <h2> e aggiunge "Sezione <valore del contatore>:" all'inizio di ogni elemento <h2>:
body {
counter-reset: section;
}
h2::before {
counter-increment: section;
content: "Section " counter(section) ": ";
}
L'esempio seguente crea un contatore per la pagina (sezione) e un contatore per ogni elemento <h1> (sottosezione). Il contatore "sezione" verrà conteggiato per ogni elemento <h1> con "Sezione <valore del contatore di sezione>." e il contatore "sottosezione" verrà conteggiato per ogni elemento <h2> con "<valore del contatore di sezione >.<valore del contatore della sottosezione>":
body {
counter-reset: section;
}
h1 {
counter-reset: subsection;
}
h1::before {
counter-increment: section;
content: "Section " counter(section) ". ";
}
h2::before {
counter-increment: subsection;
content: counter(section) "." counter(subsection) " ";
}
Un contatore può essere utile anche per creare elenchi strutturati perché una nuova istanza di un contatore viene creata automaticamente negli elementi figlio. Qui utilizziamo la funzione counters()
per inserire una stringa tra diversi livelli di contatori nidificati:
ol {
counter-reset: section;
list-style-type: none;
}
li::before {
counter-increment: section;
content: counters(section,".") " ";
}
Proprietà | Descrizione |
---|---|
content | Utilizzato con gli pseudo-elementi ::before e ::after, per inserire il contenuto generato |
counter-increment | Incrementa uno o più valori del contatore |
counter-reset | Creates or resets one or more counters |
counter() | Returns the current value of the named counter |