
Uno pseudo-elemento CSS viene utilizzato per definire lo stile di parti specificate di un elemento.
Ad esempio, può essere utilizzato per:
La sintassi degli pseudo-elementi:
selettore::pseudo-elemento {
proprietà: valore;
}
::first-lineLo pseudo-elemento ::first-line viene utilizzato per aggiungere uno stile speciale alla prima riga di un testo.
L'esempio seguente formatta la prima riga del testo in tutti gli elementi <p>:
p::first-line {
color: #ff0000;
font-variant: small-caps;
}
Allo pseudo-elemento ::first-line si applicano le seguenti proprietà:
I due punti doppi hanno sostituito la notazione dei due punti singoli per gli pseudo-elementi nei CSS3. Questo è stato un tentativo del W3C di distinguere tra pseudo-classi e pseudo-elementi.
La sintassi dei due punti è stata utilizzata sia per le pseudo-classi che per gli pseudo-elementi nei CSS2 e CSS1.
Per compatibilità con le versioni precedenti, la sintassi dei due punti è accettabile per gli pseudo-elementi CSS2 e CSS1.
::first-letterLo pseudoelemento ::first-letter viene utilizzato per aggiungere uno stile speciale alla prima lettera di un testo.
L'esempio seguente formatta la prima lettera del testo in tutti gli elementi <p>:
p::first-letter {
color: #ff0000;
font-size: xx-large;
}
Le seguenti proprietà si applicano allo pseudo-elemento ::first-letter:
Gli pseudo-elementi possono essere combinati con le classi HTML:
p.intro::first-letter {
color: #ff0000;
font-size: 200%;
}
L'esempio su indicato mostrerà la prima lettera dei paragrafi con class="intro", in rosso e di dimensioni maggiori.
È anche possibile combinare più pseudo-elementi.
Nell'esempio seguente, la prima lettera di un paragrafo sarà rossa, con un carattere di dimensione xx-large. Il resto della prima riga sarà blu e in maiuscoletto. Il resto del paragrafo avrà la dimensione e il colore del carattere predefiniti:
p::first-letter {
color: #ff0000;
font-size: xx-large;
}
p::first-line {
color: #0000ff;
font-variant: small-caps;
}
::beforeLo pseudo-elemento ::before può essere utilizzato per inserire del contenuto prima del contenuto di un elemento.
L'esempio seguente inserisce un'immagine prima del contenuto di ciascun elemento <h1>:
h1::before {
content: url(smiley.gif);
}
::afterLo pseudo-elemento ::after può essere utilizzato per inserire del contenuto dopo il contenuto di un elemento.
L'esempio seguente inserisce un'immagine dopo il contenuto di ciascun elemento <h1>:
h1::after {
content: url(smiley.gif);
}
::markerLo pseudo-elemento ::marker seleziona i marcatori degli elementi della lista.
L'esempio seguente definisce lo stile dei marcatori degli elementi dell'elenco:
::marker {
color: red;
font-size: 23px;
}
::selectionLo pseudo-elemento ::selection corrisponde alla porzione di un elemento selezionata da un utente.
Le seguenti proprietà CSS possono essere applicate alla ::selection: color, background, cursor, e outline.
L'esempio seguente rende il testo selezionato rosso su sfondo giallo:
::selection {
color: red;
background: yellow;
}
| Selettore | Esempio | Descrizione esempio |
|---|---|---|
| ::after | p::after | Inserisce il contenuto dopo ogni elemento <p> |
| ::before | p::before | Inserisce il contenuto prima di ogni elemento <p> |
| ::first-letter | p::first-letter | Seleziona la prima lettera di ogni elemento <p> |
| ::first-line | p::first-line | Seleziona la prima riga di ogni elemento <p> |
| ::marker | ::marker | Seleziona i marcatori delle voci dell'elenco |
| ::selection | p::selection | Seleziona la parte di un elemento selezionata da un utente |