Quali sono gli pseudo-elementi?
Uno pseudo-elemento CSS viene utilizzato per parti di stile specificato di un elemento.
Ad esempio, può essere utilizzato per:
- Lo stile la prima lettera, o una linea, di un elemento
- Inserire contenuto prima, o dopo, il contenuto di un elemento
Sintassi
La sintassi di pseudo-elementi:
selector::pseudo-element {
property:value;
}
![]() | Si noti la doppia colon notazione - ::first-line contro :first-line Il doppio colon ha sostituito la notazione a singolo colon per pseudo-elementi in CSS3. Questo è stato un tentativo da W3C di distinguere tra pseudo-classi e pseudo-elementi. La sintassi single-colon è stato utilizzato per entrambe le pseudo-classi e pseudo-elementi in CSS2 e CSS1. Per la compatibilità a ritroso, la sintassi singolo colon è accettabile per CSS2 e CSS1 pseudo-elementi. |
---|
Il ::first-line pseudo-elemento
Il ::first-line
pseudo-elemento viene utilizzato per aggiungere uno stile speciale alla prima riga di un testo.
L'esempio seguente formatta la prima riga del testo in tutte le <p> elementi:
Nota: Il ::first-line
pseudo-elemento può essere applicato solo a elementi block-level.
Le seguenti proprietà si applicano al ::first-line
pseudo-elemento:
- font
- color
- background
- word-spacing
- letter-spacing
- text-decoration
- vertical-align
- text-transform
- line-height
- clear
Il ::first-letter pseudo-elemento
Il ::first-letter
pseudo-elemento è utilizzato per aggiungere uno stile particolare per la prima lettera di un testo.
L'esempio seguente formatta la prima lettera del testo in tutte le <p> elementi:
Nota: Il ::first-letter
pseudo-elemento può essere applicato solo a elementi di blocco.
Le seguenti proprietà si applicano al ::first-letter pseudo- elemento:
- font proprietà
- color proprietà
- background proprietà
- margin proprietà
- padding proprietà
- border proprietà
- text-decoration
- vertical-align (solo se "float" è "none" )
- text-transform
- line-height
- float
- clear
Gli pseudo-elementi e classi CSS
Gli pseudo-elementi possono essere combinati con le classi CSS:
L'esempio precedente visualizzerà la prima lettera dei paragrafi con class="intro" , in rosso e in una dimensione più grande.
Gli pseudo-elementi multipli
Diversi pseudo-elementi possono essere combinati.
Nel seguente esempio, la prima lettera di un paragrafo sarà rosso, in una dimensione di carattere xx-large. Il resto della prima riga sarà blu, in maiuscoletto. Il resto del paragrafo sarà la dimensione del font di default e colore:
Esempio
p::first-letter
{
color: #ff0000;
font-size: xx-large;
}
p::first-line
{
color: #0000ff;
font-variant: small-caps;
}
Prova tu stesso " CSS - L' ::before pseudo-elemento
La ::before
pseudo-elemento può essere utilizzato per inserire alcuni contenuti prima che il contenuto di un elemento.
L'esempio seguente inserisce un'immagine prima che il contenuto di ogni <h1> elemento:
CSS - L' ::after pseudo-elemento
L' ::after
pseudo-elemento può essere utilizzato per inserire alcuni contenuti dopo che il contenuto di un elemento.
L'esempio seguente inserisce un'immagine dopo che il contenuto di ogni <h1> elemento:
CSS - La ::selection pseudo-elemento
La ::selection
pseudo-elemento corrisponde alla porzione di un elemento selezionato da un utente.
Le seguenti proprietà CSS possono essere applicati a ::selection
: color
, background
, cursor
, e outline
.
L'esempio seguente rende il rosso testo selezionato su uno sfondo giallo:
Mettiti alla prova con esercizi!
Esercizio 1 » Esercizio 2» Esercizio 3 »
Tutti i CSS Pseudo elementi
Selettore | Esempio | descrizione esempio |
---|---|---|
::after | p::after | Inserire qualcosa dopo che il contenuto di ogni elemento <p> |
::before | p::before | Inserire qualcosa prima che il contenuto di ogni <p> elemento |
::first-letter | p::first-letter | Seleziona la prima lettera di ogni <p> elemento |
::first-line | p::first-line | Seleziona la prima riga di ogni <p> elemento |
::selection | p::selection | Seleziona la porzione di un elemento selezionato da un utente |
Tutte le classi CSS Pseudo
Selettore | Esempio | descrizione esempio |
---|---|---|
:active | a:active | Seleziona il collegamento attivo |
:checked | input:checked | Seleziona ogni verificato <input> elemento |
:disabled | input:disabled | Seleziona ogni disabilitato <input> elemento |
:empty | p:empty | Seleziona ogni <p> elemento che non ha figli |
:enabled | input:enabled | Seleziona ogni abilitato <input> elemento |
:first-child | p:first-child | Seleziona ogni <p> elementi che è il primo figlio del suo genitore |
:first-of-type | p:first-of-type | Seleziona ogni <p> elemento che è il primo <p> elemento del suo genitore |
:focus | input:focus | Seleziona il <input> elemento che ha il focus |
:hover | a:hover | Seleziona link al passaggio del mouse |
:in-range | input:in-range | Seleziona <input> elementi con un valore all'interno di un intervallo specificato |
:invalid | input:invalid | Seleziona tutti <input> elementi con un valore non valido |
:lang(language) | p:lang(it) | Seleziona ogni <p> elemento con un valore di attributo lang inizia con "it" |
:last-child | p:last-child | Seleziona ogni <p> elementi che è l'ultimo figlio del suo genitore |
:last-of-type | p:last-of-type | Seleziona ogni <p> elemento che è l'ultimo <p> elemento del suo genitore |
:link | a:link | Seleziona tutti i collegamenti non visitati |
:not(selector) | :not(p) | Seleziona ogni elemento che non è un <p> elemento |
:nth-child(n) | p:nth-child(2) | Seleziona ogni <p> elemento che è il secondo figlio del suo genitore |
:nth-last-child(n) | p:nth-last-child(2) | Seleziona ogni <p> elemento che è il secondo figlio del suo genitore, contando dall'ultimo bambino |
:nth-last-of-type(n) | p:nth-last-of-type(2) | Seleziona ogni <p> elemento che è il secondo <p> elemento del suo genitore, contando dall'ultimo bambino |
:nth-of-type(n) | p:nth-of-type(2) | Seleziona ogni <p> elemento che è il secondo <p> elemento del suo genitore |
:only-of-type | p:only-of-type | Seleziona ogni <p> elemento che è l'unico <p> elemento del suo genitore |
:only-child | p:only-child | Seleziona ogni <p> elemento che è l'unico figlio del suo genitore |
:optional | input:optional | Seleziona <input> elementi senza "required" l'attributo |
:out-of-range | input:out-of-range | Seleziona <input> elementi con un valore al di fuori di un intervallo specificato |
:read-only | input:read-only | Seleziona <input> elementi con una "readonly" attributo specificato |
:read-write | input:read-write | Seleziona <input> elementi con nessun "readonly" attributo |
:required | input:required | Seleziona <input> elementi con una "required" attributo specificato |
:root | root | Seleziona elemento radice del documento |
:target | #news:target | Seleziona la corrente attiva #news elemento (cliccato su un URL che contiene quel nome ancora) |
:valid | input:valid | Seleziona tutti <input> elementi con un valore valido |
:visited | a:visited | Seleziona tutti i link visitati |