Spajanje redova u CSS gridovima
Redovi i kolone u gridovima formiraju mrežu. Moguće je postići da element zauzme ne jednu ćeliju mreže, već više njih.
Da bi element zauzeo više od
jednog reda, potrebno mu je dodeliti
svojstvo grid-row.
U ovom svojstvu se kroz kosu crtu zadaju
brojevi koji označavaju početnu
i krajnju poziciju elemenata
u gridu.
Pri tome će se element proširiti od
prve pozicije do druge pozicije
(ne uključujući je). To znači da će
vrednost 1 / 2 naterati
element da zauzme jednu prvu
ćeliju, a vrednost 1 / 3
nateraće element da zauzme
prvu i drugu ćeliju (ali
ne uključujući treću).
Primer
Pretpostavimo da imamo grid sa tri podređena elementa. Hajde da ih pozicioniramo tako da prvi element zauzme dva reda:
<div id="parent">
<div id="elem1">1</div>
<div id="elem2">2</div>
<div id="elem3">3</div>
</div>
#parent {
display: grid;
grid-template-columns: 2fr 1fr;
height: 300px;
width: 400px;
padding: 10px;
border: 2px solid #696989;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
#elem1 {
grid-row: 1 / 3; /* dva reda */
}
#elem2 {
grid-row: 1 / 2;
}
#elem3 {
grid-row: 2 / 3;
}
:
Primer
Sada ćemo dodeliti četvrtom bloku tri reda:
<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: 2fr 1fr;
height: 300px;
width: 400px;
padding: 10px;
border: 2px solid #696989;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
#elem1 {
grid-row: 1 / 2;
}
#elem2 {
grid-row: 2 / 3;
}
#elem3 {
grid-row: 3 / 4;
}
#elem4 {
grid-row: 1 / 4;
}
:
Praktični zadaci
Pozicionirajte sve elemente i izvršite spajanje redova u skladu sa sledećim primerom:
Pozicionirajte sve elemente i izvršite spajanje redova u skladu sa sledećim primerom:
Pozicionirajte sve elemente i izvršite spajanje redova u skladu sa sledećim primerom: