Posizionamento assoluto in CSS

.parent{
position: relative;
}
.child{
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}

Queste proprietà sono impostate sull’elemento figlio. Il posizionamento assoluto basa la posizione dell’elemento rispetto al più vicino elemento padre che ha position: relative. Se non ne trova uno, sarà relativo al documento. Aggiungete top: 50%; left: 50%; perché la posizione è calcolata dall’angolo in alto a sinistra.

creato utilizzando draw.io

È necessario tirare indietro l’elemento con la metà della sua larghezza e altezza. Potete ottenerlo con transform: translate(-50%, -50%);

Usando l’unità Viewport

.child{
margin: 50vh auto 0;
transform: translateY(-50%);
}

Usiamo il margin-left/margin-right: auto; per la centratura orizzontale e usiamo il valore relativo vh per la centratura verticale. Naturalmente, dovete tirare indietro l’elemento come nell’esempio assoluto (ma solo tradurre l’altezza). Nota :- Questo metodo funziona solo se state posizionando alla viewport principale.

Usando Flexbox

.parent{
display: flex;
justify-content: center;
align-items: center;
}

Impostare il genitore (o contenitore) a display: flex; permette al browser di sapere che vogliamo che i figli usino flexbox per il loro layout. Justify-content determina come spazializzare il contenuto nella riga o nella colonna. Align-content è simile a justify-content, ma controlla dove gli elementi sono sull’asse trasversale.

Invece di usare justify-content e align-items possiamo usare margin: auto; in child.

.parent{
display: flex;
min-height: 100vh;
}
.child{
margin: auto;
}

Utilizzando CSS Grid

.parent{ 
display: grid;
grid-template-rows: 100vh;
grid-template-columns: 100vw;
}
.child{
justify-self: center;
align-self: center;
}

Sul genitore impostare display: grid;e specificare la larghezza di riga/colonna. Sul figlio impostate justify-self e align-self al centro. Le proprietà justify-self e align-self impostano il modo in cui una casella è giustificata all’interno del suo contenitore di allineamento (genitore) lungo l’asse appropriato.

Seguimi su Twitter, LinkedIn o GitHub.

Spero che questo articolo ti sia utile. Grazie per aver letto & Continua a codificare !!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *