Zarovnání jednotlivého prvku na svislé ose CSS gridu
Podobným způsobem lze zarovnávat prvky
na svislé ose pomocí
vlastnosti align-self.
Podívejme se na příkladech,
jak to funguje.
Na začátek svislé osy
Nastavme zarovnání pro první prvek na začátek svislé osy:
<div id="parent">
<div id="elem1">1</div>
<div id="elem2">2</div>
<div id="elem3">3</div>
<div id="elem4">4</div>
</div>
#parent {
display: grid;
grid-template-columns: 100px 100px;
grid-template-rows: repeat(3, 1fr);
grid-gap: 10px;
padding: 10px;
border: 2px solid #696989;
height: 200px;
width: 400px;
}
#parent > div {
grid-gap: 10px;
padding: 10px;
box-sizing: border-box;
border: 1px solid #696989;
}
#elem1 {
align-self: start;
}
:
Na střed svislé osy
Nastavme zarovnání prvního prvku na střed svislé osy:
<div id="parent">
<div id="elem1">1</div>
<div>2</div>
<div>3</div>
<div>4</div>
</div>
#parent {
display: grid;
grid-template-columns: 100px 100px;
grid-template-rows: repeat(3, 1fr);
grid-gap: 10px;
padding: 10px;
border: 2px solid #696989;
height: 200px;
width: 400px;
}
#parent > div {
grid-gap: 10px;
padding: 10px;
box-sizing: border-box;
border: 1px solid #696989;
}
#elem1 {
align-self: center;
}
:
Na konec svislé osy
Nastavme zarovnání pro náš první prvek v gridu na konec svislé osy:
<div id="parent">
<div id="elem1">1</div>
<div>2</div>
<div>3</div>
<div>4</div>
</div>
#parent {
display: grid;
grid-template-columns: 100px 100px;
grid-template-rows: repeat(3, 1fr);
grid-gap: 10px;
padding: 10px;
border: 2px solid #696989;
height: 200px;
width: 400px;
}
#parent > div {
grid-gap: 10px;
padding: 10px;
box-sizing: border-box;
border: 1px solid #696989;
}
#elem1 {
align-self: end;
}
:
Praktické úkoly
Vytvořte grid skládající se z pěti prvků, umístěných ve dvou sloupcích. Proveďte zarovnání třetího prvku na začátek svislé osy gridu.
Nyní umístěte prvky gridu do tří sloupců a nastavte zarovnání druhého prvku na střed svislé osy gridu.
Upravte předchozí úkol tak, aby zarovnání čtvrtého a pátého prvku probíhalo na konec a začátek svislé osy respektive.