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.
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; }
Risultato nel browser
La prima regola estende border-box anche agli pseudo-elementi indicati. La seconda assegna navy a entrambi i tipi di titolo.
| Proprietà | Valore nell’esempio | Significato |
|---|---|---|
box-sizing | border-box | Convenzione per includere o escludere padding e bordo dalle dimensioni dichiarate. |
color | navy | Colore del testo; non imposta lo sfondo. |
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
- Osserva il punto di partenza: apri l’esempio, confronta markup e regole e individua il selettore o il contesto di layout rilevante.
- Esegui la modifica: Sostituisci temporaneamente la virgola fra h1 e h2 con uno spazio.
- Salva e ricarica la pagina dopo ogni modifica. Confronta gli elementi che devono cambiare con quelli che devono restare invariati.
- Ispeziona il risultato: usa il menu Ispeziona e controlla Styles/Regole e Computed/Calcolato. Per layout Flex o Grid attiva l’overlay, se disponibile.
- 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.
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
| Controllo | Criterio |
|---|---|
| Effetto specifico | La regola non corrisponde più ai due titoli fratelli dell’esempio. Ripristina la virgola. |
| Corrispondenza del codice | Individua la dichiarazione o la relazione HTML responsabile della differenza. |
| Persistenza | Riporta la modifica nel file e verifica dopo un ricaricamento. |
| Spiegazione | Motiva la differenza senza affidarti soltanto a uno screenshot. |
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.
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? ▾
2. Come si interpreta il codice dell’esempio? ▾
3. Quale risultato permette di verificare la modifica del laboratorio? ▾
4. Quale attenzione evita un’interpretazione sbagliata? ▾
Riferimento tecnico: MDN — riferimento CSS. Cerca le proprietà o i selettori utilizzati nell’esempio.