CSS Fogli Di Stile

Posizionamento Assoluto

Posizionamento assoluto: teoria, esempi e sperimentazione nel browser.

Prerequisiti: Posizionamento relativo.

Posizionamento assoluto

Posizionamento assoluto: fondamenti.

position: static è il comportamento normale e non usa gli offset di posizionamento nel modo delle scatole posizionate. relative conserva lo spazio originale nel flusso e consente di spostare visivamente l’elemento. absolute viene tolto dal flusso: gli altri elementi non riservano automaticamente il suo spazio. Nel caso semplice qui studiato, un antenato con position: relative fornisce il riferimento per l’elemento absolute. Altre proprietà, come alcune trasformazioni, possono anch’esse creare un contenitore di riferimento.

Come funziona: posizionamento assoluto

Posizionamento assoluto: comportamento nel browser.

fixed usa normalmente il viewport come riferimento, ma alcuni antenati possono cambiare questo comportamento. Un elemento fisso può coprire contenuti quando la finestra è piccola. sticky conserva il proprio posto nel flusso e può aderire a un bordo del suo contenitore di scorrimento dopo una soglia, per esempio top: 0. Per osservarlo servono spazio di scorrimento e un contesto adatto; overflow degli antenati può cambiare quale contenitore è rilevante.

Scelte di utilizzo e limiti

Posizionamento assoluto: progetto e verifica.

z-index controlla l’ordine di impilamento nei contesti pertinenti. Può applicarsi agli elementi posizionati e, in condizioni previste, anche ai flex e grid item. Un valore enorme non permette a un figlio di uscire dal contesto di impilamento del genitore. Proprietà come transform e opacity inferiore a 1 possono creare nuovi contesti. Prima di aumentare z-index cerca quali antenati definiscano questi confini.

Idea chiave: La scheda fornisce il riferimento. L’etichetta non occupa una riga nel flusso: il padding superiore riserva intenzionalmente spazio per evitare che copra il titolo.

Esempio commentato

Posizionamento assoluto: 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>Posizionamento assoluto</title>
<link rel="stylesheet" href="stile.css">
</head>
<body>
<article class="scheda">
<span class="etichetta">Novità</span>
<h1>Corso CSS</h1>
<p>Un’etichetta collocata dentro la scheda.</p>
</article>
</body>
</html>

File stile.css

.scheda {
  position: relative;
  padding: 3rem 1rem 1rem;
  border: 1px solid #174a7e;
}
.etichetta {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  padding: 0.25rem 0.5rem;
  background-color: #eef4fa;
}

La scheda fornisce il riferimento. L’etichetta non occupa una riga nel flusso: il padding superiore riserva intenzionalmente spazio per evitare che copra il titolo.

ProprietàValore nell’esempioSignificato
positionrelativeModalità di posizionamento.
padding3rem 1rem 1remSpazio interno fra contenuto e bordo.
border1px solid #174a7eAbbreviazione per spessore, stile e colore del bordo.
top0.5remOffset superiore in un contesto di posizionamento pertinente.
right0.5remOffset destro in un contesto di posizionamento pertinente.
background-color#eef4faColore dello sfondo dell’elemento.
Attenzione: No. L’elemento resta vincolato al contesto di impilamento cui appartiene.

LABORATORIO

Sperimentare: Posizionamento assoluto

La scheda fornisce il riferimento. L’etichetta non occupa una riga nel flusso: il padding superiore riserva intenzionalmente spazio per evitare che copra il titolo.

Obiettivo: Comprendere e applicare posizionamento assoluto 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: Rimuovi position: relative dalla scheda e osserva lo spostamento.
  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

Con la scheda posizionata l’etichetta segue il suo angolo. Senza quel riferimento può usare un altro contenitore, nel documento semplice il riferimento iniziale.

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 specificoCon la scheda posizionata l’etichetta segue il suo angolo. Senza quel riferimento può usare un altro contenitore, nel documento semplice il riferimento iniziale.
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

Sposta l’etichetta in alto a sinistra senza cambiare l’HTML.

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
.etichetta {
  position: absolute;
  top: 0.5rem;
  left: 0.5rem;
  right: auto;
}

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

Posizionamento assoluto: interpretazione e applicazione.

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

1. Quale position rimuove la scatola dal normale flusso? ▾
Risposta: absolute. position: static è il comportamento normale e non usa gli offset di posizionamento nel modo delle scatole posizionate. relative conserva lo spazio originale nel flusso e consente di spostare visivamente l’elemento. absolute viene tolto dal flusso: gli altri elementi non riservano automaticamente il suo spazio. Nel caso semplice qui studiato, un antenato con position: relative fornisce il riferimento per l’elemento absolute. Altre proprietà, come alcune trasformazioni, possono anch’esse creare un contenitore di riferimento.
2. Come si interpreta il codice dell’esempio? ▾
Risposta: La scheda fornisce il riferimento. L’etichetta non occupa una riga nel flusso: il padding superiore riserva intenzionalmente spazio per evitare che copra il titolo.
3. Quale risultato permette di verificare la modifica del laboratorio? ▾
Risposta: Con la scheda posizionata l’etichetta segue il suo angolo. Senza quel riferimento può usare un altro contenitore, nel documento semplice il riferimento iniziale.
4. Quale attenzione evita un’interpretazione sbagliata? ▾
Risposta: No. L’elemento resta vincolato al contesto di impilamento cui appartiene.

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