CSS Fogli Di Stile

Selettore Universale E Raggruppamento

Selettore universale e raggruppamento: teoria, esempi e sperimentazione nel browser.

Prerequisiti: Selettori di ID.

Selettore universale e liste di selettori

Selettore universale e liste di selettori: fondamenti.

Il selettore universale * corrisponde agli elementi di qualsiasi tipo. È utile quando vuoi applicare una convenzione condivisa, come box-sizing: border-box, ma può coinvolgere molti elementi. Non seleziona automaticamente pseudo-elementi come ::before e ::after: se la convenzione deve riguardarli, aggiungili esplicitamente. Il selettore universale non aumenta la specificità.

Come funziona: selettore universale e liste di selettori

Selettore universale e liste di selettori: comportamento nel browser.

Una virgola separa selettori alternativi: h1, h2 applica lo stesso blocco a entrambi i tipi. Raggruppare evita duplicazioni e rende visibile una scelta comune. La virgola non esprime discendenza: h1 h2 descriverebbe un h2 discendente di un h1, non due gruppi alternativi. La struttura e la punteggiatura del selettore cambiano quindi il significato.

Scelte di utilizzo e limiti

Selettore universale e liste di selettori: progetto e verifica.

In una normale lista di selettori, un selettore non valido può invalidare l’intera regola. Scrivi liste semplici e controlla la sintassi prima di aggiungere molte alternative. Raggruppa elementi che condividono davvero la stessa presentazione, non ogni elemento della pagina: alcune differenze devono rimanere esplicite.

Idea chiave: La prima regola estende border-box anche agli pseudo-elementi indicati. La seconda assegna navy a entrambi i tipi di titolo.

Esempio commentato

Selettore universale e liste di selettori: HTML e CSS.

Esempio con stile esterno. Il documento index.html collega il file stile.css mediante il tag link nella head.

Documento HTML completo

<!doctype html>
<html lang="it">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Selettore universale e raggruppamento</title>
<link rel="stylesheet" href="stile.css">
</head>
<body>
<h1>Titolo principale</h1>
<h2>Sottotitolo</h2>
<p>Paragrafo.</p>
</body>
</html>

File stile.css

*, *::before, *::after { box-sizing: border-box; }
h1, h2 { color: navy; }

La prima regola estende border-box anche agli pseudo-elementi indicati. La seconda assegna navy a entrambi i tipi di titolo.

ProprietàValore nell’esempioSignificato
box-sizingborder-boxConvenzione per includere o escludere padding e bordo dalle dimensioni dichiarate.
colornavyColore del testo; non imposta lo sfondo.
Attenzione: Una virgola indica alternative; uno spazio indica una relazione di discendenza. * non include automaticamente gli pseudo-elementi.

LABORATORIO

Sperimentare: Selettore universale e liste di selettori

La prima regola estende border-box anche agli pseudo-elementi indicati. La seconda assegna navy a entrambi i tipi di titolo.

Obiettivo: Comprendere e applicare selettore universale e liste di selettori attraverso esempi e verifica nel browser.

Software: editor di testo e browser con DevTools; Tempo: 15 minuti.

Preparazione: scarica l’esempio completo e estrai lo ZIP. Apri index.html nel browser. Puoi anche aprire l’esempio online.

Apri il file stile.css nell’editor. Le lezioni iniziali usano un documento già preparato per concentrarsi sulle regole; il collegamento esterno e lo stile interno vengono spiegati nelle lezioni dedicate. Le modifiche nei DevTools sono normalmente temporanee.

Procedura passo passo

  1. Osserva il punto di partenza: apri l’esempio, confronta markup e regole e individua il selettore o il contesto di layout rilevante.
  2. Esegui la modifica: Sostituisci temporaneamente la virgola fra h1 e h2 con uno spazio.
  3. Salva e ricarica la pagina dopo ogni modifica. Confronta gli elementi che devono cambiare con quelli che devono restare invariati.
  4. Ispeziona il risultato: usa il menu Ispeziona e controlla Styles/Regole e Computed/Calcolato. Per layout Flex o Grid attiva l’overlay, se disponibile.
  5. Annota causa ed effetto: scrivi il valore o la struttura iniziale, il cambiamento e il risultato. Ripristina il punto di partenza prima dell’esercizio autonomo.
Cosa devi vedere — Output atteso

La regola non corrisponde più ai due titoli fratelli dell’esempio. Ripristina la virgola.

Il font e alcuni dettagli dell’interfaccia dipendono dal browser. Valuta la proprietà e il comportamento descritti, non una corrispondenza perfetta con uno screenshot.

Verifica del risultato

ControlloCriterio
Effetto specificoLa regola non corrisponde più ai due titoli fratelli dell’esempio. Ripristina la virgola.
Corrispondenza del codiceIndividua la dichiarazione o la relazione HTML responsabile della differenza.
PersistenzaRiporta la modifica nel file e verifica dopo un ricaricamento.
SpiegazioneMotiva la differenza senza affidarti soltanto a uno screenshot.
Se il risultato non coincide: verifica file aperto, salvataggio, percorso del CSS, selettore e validità dei valori. Controlla poi la cascata e le dimensioni del viewport. Cambia una sola causa alla volta.

Esercizio autonomo

Raggruppa p e li per assegnare a entrambi line-height: 1.6.

Consegna: file modificati e una breve spiegazione di selettore, proprietà e risultato. Criterio di riuscita: il cambiamento richiesto funziona dopo il ricaricamento e non taglia informazioni indispensabili.

Una possibile soluzione dell’esercizio
p, li { line-height: 1.6; }

Integra la soluzione nel punto pertinente: modifica o sostituisci le regole coinvolte invece di accumulare dichiarazioni contraddittorie. Le altre parti dell’esempio restano necessarie.

Verifica dei concetti

Selettore universale e liste di selettori: interpretazione e applicazione.

Seleziona una domanda per visualizzare la risposta e confrontarla con la tua.

1. Che cosa significa h1, h2? ▾
Risposta: Seleziona h1 oppure h2. Il selettore universale * corrisponde agli elementi di qualsiasi tipo. È utile quando vuoi applicare una convenzione condivisa, come box-sizing: border-box, ma può coinvolgere molti elementi. Non seleziona automaticamente pseudo-elementi come ::before e ::after: se la convenzione deve riguardarli, aggiungili esplicitamente. Il selettore universale non aumenta la specificità.
2. Come si interpreta il codice dell’esempio? ▾
Risposta: La prima regola estende border-box anche agli pseudo-elementi indicati. La seconda assegna navy a entrambi i tipi di titolo.
3. Quale risultato permette di verificare la modifica del laboratorio? ▾
Risposta: La regola non corrisponde più ai due titoli fratelli dell’esempio. Ripristina la virgola.
4. Quale attenzione evita un’interpretazione sbagliata? ▾
Risposta: Una virgola indica alternative; uno spazio indica una relazione di discendenza. * non include automaticamente gli pseudo-elementi.

Riferimento tecnico: MDN — riferimento CSS. Cerca le proprietà o i selettori utilizzati nell’esempio.