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-line
Lo 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-letter
Lo 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;
}
::before
Lo 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);
}
::after
Lo 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);
}
::marker
Lo 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;
}
::selection
Lo 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 |