Esercitazione CSS

CSS CASA Introduzione CSS Sintassi CSS Selettori CSS CSS Come fare per Commenti CSS Colori CSS Sfondi CSS Confini CSS Margini CSS Imbottitura CSS Altezza/larghezza CSS Modello a scatola CSS Schema CSS Testo CSS Font CSS Icone CSS Collegamenti CSS Elenchi CSS Tabelle CSS Display CSS Larghezza massima CSS Posizione CSS Indice Z CSS Overflow CSS CSS galleggiante CSS Inline-block Allineamento CSS Combinatori CSS Pseudo-classe CSS Pseudoelemento CSS Opacità CSS Barra di navigazione CSS Menu a discesa CSS Galleria di immagini CSS Sprite di immagini CSS Selettori CSS Attr Moduli CSS Contatori CSS Layout del sito Web CSS Unità CSS Specificità CSS CSS! importante Funzioni matematiche CSS

CSS avanzato

Angoli arrotondati CSS Immagini del bordo CSS Sfondi CSS Colori CSS Parole chiave a colori CSS Gradienti CSS Ombre CSS Effetti di testo CSS Font Web CSS Trasformazioni 2D CSS Trasformazioni CSS 3D Transizioni CSS Animazioni CSS Suggerimenti CSS Immagini in stile CSS Riflessione dell'immagine CSS Adattamento agli oggetti CSS Posizione dell'oggetto CSS Mascheratura CSS Pulsanti CSS Impaginazione CSS Colonne multiple CSS Interfaccia utente CSS Variabili CSS Dimensioni della scatola CSS Query sui media CSS Esempi CSS MQ Cassetta flessibile CSS

CSS reattivo

Introduzione a RWD Vista posteriore Vista griglia RWD Query sui media RWD Immagini RWD Video RWD Quadri RWD Modelli RWD

Griglia CSS

Introduzione alla griglia Contenitore a griglia Elemento griglia

CSS SASS

Esercitazione SASS

Esempi CSS

Modelli CSS Esempi CSS css quiz Esercizi CSS Certificato CSS

Riferimenti CSS

Riferimento CSS Selettori CSS Funzioni CSS CSS di riferimento sonoro Font sicuri per il Web CSS CSS Animabile Unità CSS Convertitore CSS PX-EM Colori CSS Valori di colore CSS Valori predefiniti CSS Supporto del browser CSS

Pseudo-elementi CSS


Cosa sono gli pseudo-elementi?

Uno pseudo-elemento CSS viene utilizzato per definire lo stile di parti specificate di un elemento.

Ad esempio, può essere utilizzato per:

  • Disegna la prima lettera, o riga, di un elemento
  • Inserisci il contenuto prima o dopo il contenuto di un elemento

Sintassi

La sintassi degli pseudo-elementi:

selector::pseudo-element {
  property: value;
}

Lo pseudoelemento ::first-line

Lo ::first-linepseudo-elemento 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>:

Esempio 

p::first-line {
  color: #ff0000;
  font-variant: small-caps;
}

Nota: lo ::first-linepseudoelemento può essere applicato solo agli elementi a livello di blocco.

Le seguenti proprietà si applicano allo ::first-line pseudoelemento:

  • proprietà dei caratteri
  • proprietà del colore
  • proprietà di sfondo
  • spaziatura delle parole
  • spaziatura del carattere
  • decorazione del testo
  • allineamento verticale
  • trasformazione del testo
  • altezza della linea
  • chiaro

Notare la notazione con due due punti - ::first-line contro :first-line

I due punti doppi ha sostituito la notazione con due 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 singoli è stata utilizzata sia per le pseudo-classi che per gli pseudo-elementi in CSS2 e CSS1.

Per la compatibilità con le versioni precedenti, la sintassi a due punti è accettabile per gli pseudo-elementi CSS2 e CSS1.



Il ::first-letter Pseudo-elemento

Lo ::first-letterpseudo-elemento 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>: 

Esempio

p::first-letter {
  color: #ff0000;
  font-size: xx-large;
}

Nota: lo ::first-letterpseudoelemento può essere applicato solo agli elementi a livello di blocco.

Le seguenti proprietà si applicano allo pseudoelemento ::first-letter: 

  • proprietà dei caratteri
  • proprietà del colore 
  • proprietà di sfondo
  • proprietà del margine
  • proprietà di riempimento
  • proprietà di confine
  • decorazione del testo
  • vertical-align (solo se "float" è "none")
  • trasformazione del testo
  • altezza della linea
  • galleggiante
  • chiaro

Pseudo-elementi e classi HTML

Gli pseudo-elementi possono essere combinati con le classi HTML: 

Esempio

p.intro::first-letter {
  color: #ff0000;
  font-size: 200%;
}

L'esempio sopra mostrerà la prima lettera dei paragrafi con class="intro", in rosso e in una dimensione più grande.


Pseudo-elementi multipli

È anche possibile combinare più pseudo-elementi.

Nell'esempio seguente, la prima lettera di un paragrafo sarà rossa, con una dimensione del carattere xx-large. Il resto della prima riga sarà blu e in maiuscolo. Il resto del paragrafo sarà la dimensione e il colore del carattere predefiniti:

Esempio

p::first-letter {
  color: #ff0000;
  font-size: xx-large;
}

p::first-line {
  color: #0000ff;
  font-variant: small-caps;
}

CSS - Il ::before Pseudo-elemento

Lo ::beforepseudo-elemento può essere utilizzato per inserire del contenuto prima del contenuto di un elemento.

L'esempio seguente inserisce un'immagine prima del contenuto di ogni elemento <h1>:

Esempio

h1::before {
  content: url(smiley.gif);
}

CSS - Il ::after pseudo-elemento

Lo ::afterpseudo-elemento può essere utilizzato per inserire del contenuto dopo il contenuto di un elemento.

L'esempio seguente inserisce un'immagine dopo il contenuto di ogni elemento <h1>:

Esempio

h1::after {
  content: url(smiley.gif);
}

CSS - Il ::marker Pseudo-elemento

Lo ::markerpseudoelemento seleziona i marcatori degli elementi dell'elenco.

L'esempio seguente applica uno stile ai marcatori delle voci di elenco:

Esempio

::marker {
  color: red;
  font-size: 23px;
}

CSS - Lo pseudo-elemento ::selection

Lo ::selectionpseudo-elemento corrisponde alla parte di un elemento selezionata da un utente.

Le seguenti proprietà CSS possono essere applicate a ::selection: color, background, cursore outline.

L'esempio seguente rende il testo selezionato rosso su sfondo giallo:

Esempio

::selection {
  color: red;
  background: yellow;
}

Mettiti alla prova con gli esercizi

Esercizio:

Imposta il colore di sfondo sul rosso, della prima riga del paragrafo.

<style>
 {
  background-color: red;
}
</style>

<body>

<p class="intro">
In my younger and more vulnerable years
my father gave me some advice that I've
been turning over in my mind ever since.
'Whenever you feel like criticizing anyone,' he told me,
'just remember that all the people in this world
haven't had the advantages that you've had.'
</p>

</body>


Tutti gli pseudoelementi CSS

Selector Example Example description
::after p::after Insert something after the content of each <p> element
::before p::before Insert something before the content of each <p> element
::first-letter p::first-letter Selects the first letter of each <p> element
::first-line p::first-line Selects the first line of each <p> element
::marker ::marker Selects the markers of list items
::selection p::selection Selects the portion of an element that is selected by a user

Tutte le pseudoclassi CSS

Selector Example Example description
:active a:active Selects the active link
:checked input:checked Selects every checked <input> element
:disabled input:disabled Selects every disabled <input> element
:empty p:empty Selects every <p> element that has no children
:enabled input:enabled Selects every enabled <input> element
:first-child p:first-child Selects every <p> elements that is the first child of its parent
:first-of-type p:first-of-type Selects every <p> element that is the first <p> element of its parent
:focus input:focus Selects the <input> element that has focus
:hover a:hover Selects links on mouse over
:in-range input:in-range Selects <input> elements with a value within a specified range
:invalid input:invalid Selects all <input> elements with an invalid value
:lang(language) p:lang(it) Selects every <p> element with a lang attribute value starting with "it"
:last-child p:last-child Selects every <p> elements that is the last child of its parent
:last-of-type p:last-of-type Selects every <p> element that is the last <p> element of its parent
:link a:link Selects all unvisited links
:not(selector) :not(p) Selects every element that is not a <p> element
:nth-child(n) p:nth-child(2) Selects every <p> element that is the second child of its parent
:nth-last-child(n) p:nth-last-child(2) Selects every <p> element that is the second child of its parent, counting from the last child
:nth-last-of-type(n) p:nth-last-of-type(2) Selects every <p> element that is the second <p> element of its parent, counting from the last child
:nth-of-type(n) p:nth-of-type(2) Selects every <p> element that is the second <p> element of its parent
:only-of-type p:only-of-type Selects every <p> element that is the only <p> element of its parent
:only-child p:only-child Selects every <p> element that is the only child of its parent
:optional input:optional Selects <input> elements with no "required" attribute
:out-of-range input:out-of-range Selects <input> elements with a value outside a specified range
:read-only input:read-only Selects <input> elements with a "readonly" attribute specified
:read-write input:read-write Selects <input> elements with no "readonly" attribute
:required input:required Selects <input> elements with a "required" attribute specified
:root root Selects the document's root element
:target #news:target Selects the current active #news element (clicked on a URL containing that anchor name)
:valid input:valid Selects all <input> elements with a valid value
:visited a:visited Selects all visited links