CSS Fogli Di Stile

Allineamento Individuale Con Align Self

Allineamento individuale con align self: teoria, esempi e sperimentazione nel browser.

Prerequisiti: flex-grow, flex-shrink e flex-basis.

Allineamento individuale con align-self

Allineamento individuale con align-self: fondamenti.

align-items definisce l’allineamento comune dei figli flex. align-self permette a un singolo item di usare un allineamento trasversale diverso. Il valore auto segue normalmente la scelta del contenitore, mentre center o flex-end introducono una variante individuale.

Come funziona: allineamento individuale con align-self

Allineamento individuale con align-self: comportamento nel browser.

La proprietà non modifica l’asse principale e non sostituisce justify-content. Se vuoi spingere un item lungo l’asse principale, un margine auto pertinente può essere una tecnica diversa. Anche un margine auto sull’asse trasversale può interferire con il risultato atteso di align-self. Per la prima prova evita margini auto e dimensioni forzate.

Scelte di utilizzo e limiti

Allineamento individuale con align-self: progetto e verifica.

È utile per distinguere un componente senza cambiare l’intero gruppo. Non usarla per correggere casualmente un disallineamento dovuto a padding diverso o a un font inatteso. Leggi prima il box model e determina se la variante debba davvero avere un allineamento differente.

Idea chiave: Uno e Tre seguono flex-start del gruppo; Due usa la variante flex-end sullo stesso asse trasversale.

Esempio commentato

Allineamento individuale con align-self: 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>Allineamento individuale con align-self</title>
<link rel="stylesheet" href="stile.css">
</head>
<body>
<div class="gruppo"><div>Uno</div><div class="speciale">Due</div><div>Tre</div></div>
</body>
</html>

File stile.css

.gruppo { display: flex; align-items: flex-start; gap: 1rem; min-height: 12rem; border: 1px solid navy; }
.gruppo > div { padding: 1rem; background-color: #eef4fa; }
.speciale { align-self: flex-end; }

Uno e Tre seguono flex-start del gruppo; Due usa la variante flex-end sullo stesso asse trasversale.

ProprietàValore nell’esempioSignificato
displayflexTipo di scatola e contesto di layout.
align-itemsflex-startAllineamento degli item sull’asse pertinente.
gap1remDistanza fra elementi o tracce nel layout pertinente.
min-height12remLimite inferiore all’altezza.
border1px solid navyAbbreviazione per spessore, stile e colore del bordo.
padding1remSpazio interno fra contenuto e bordo.
Attenzione: align-self riguarda l’asse trasversale. Margini auto e dimensioni esplicite possono influenzare l’effetto.

LABORATORIO

Sperimentare: Allineamento individuale con align-self

Uno e Tre seguono flex-start del gruppo; Due usa la variante flex-end sullo stesso asse trasversale.

Obiettivo: Comprendere e applicare allineamento individuale con align-self 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: Cambia align-self della seconda scatola in center e poi auto.
  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

Center la colloca a metà dell’asse trasversale; auto la riporta all’allineamento del contenitore.

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 specificoCenter la colloca a metà dell’asse trasversale; auto la riporta all’allineamento del contenitore.
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

Usa stretch per la seconda scatola lasciando la sua altezza automatica.

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
.speciale { align-self: stretch; }

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

Allineamento individuale con align-self: interpretazione e applicazione.

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

1. Quale proprietà cambia l’allineamento di un solo item? ▾
Risposta: align-self. align-items definisce l’allineamento comune dei figli flex. align-self permette a un singolo item di usare un allineamento trasversale diverso. Il valore auto segue normalmente la scelta del contenitore, mentre center o flex-end introducono una variante individuale.
2. Come si interpreta il codice dell’esempio? ▾
Risposta: Uno e Tre seguono flex-start del gruppo; Due usa la variante flex-end sullo stesso asse trasversale.
3. Quale risultato permette di verificare la modifica del laboratorio? ▾
Risposta: Center la colloca a metà dell’asse trasversale; auto la riporta all’allineamento del contenitore.
4. Quale attenzione evita un’interpretazione sbagliata? ▾
Risposta: align-self riguarda l’asse trasversale. Margini auto e dimensioni esplicite possono influenzare l’effetto.

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