Proprietatea grid-column
Proprietatea grid-column definește
poziția de început și de sfârșit a unui element
în grid sau grilă pe coloane. Valorile proprietății pot
fi numere pozitive sau negative,
specificate prin slash. Primul număr indică
poziția de început a elementului, al doilea - poziția de sfârșit.
Dacă ca valoare specificăm un număr pozitiv, atunci poziția elementului se numără de la stânga la dreapta. Când se specifică un număr negativ, elementul va fi poziționat în ordine inversă, adică de la dreapta la stânga.
Sintaxă
selector {
grid-column: poziția de început / poziția de sfârșit;
}
Exemplu
Să definim elementelor din grid pozițiile de început și de sfârșit:
<div id="parent">
<div id="elem1">1</div>
<div id="elem2">2</div>
<div id="elem3">3</div>
</div>
#parent {
display: grid;
padding: 10px;
border: 2px solid #696989;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
#elem1 {
grid-column: 1 / 2;
}
#elem2 {
grid-column: 1 / 3;
}
#elem3 {
grid-column: 1 / 4;
}
:
Exemplu
Și acum să specificăm în proprietatea grid-column
numere negative:
<div id="parent">
<div id="elem1">1</div>
<div id="elem2">2</div>
<div id="elem3">3</div>
</div>
#parent {
display: grid;
padding: 10px;
border: 2px solid #696989;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
#elem1 {
grid-column: 1 / -2;
}
#elem2 {
grid-column: 1 / -3;
}
#elem3 {
grid-column: 1 / -4;
}
:
Exemplu
Acum să facem astfel încât primul, al doilea și al treilea element să se poziționeze pe primul rând. Iar al patrulea element să ocupe întregul al doilea rând:
<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;
padding: 10px;
border: 2px solid #696989;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
#elem1 {
grid-column: 1 / 2;
}
#elem2 {
grid-column: 2 / 3;
}
#elem3 {
grid-column: 3 / 4;
}
#elem4 {
grid-column: 1 / 4;
}
:
Exemplu
La suprapunerea coloanelor ocupate de elementele învecinate, fiecare element ulterior este deplasat pe un rând mai jos. Să folosim această particularitate pentru a face astfel încât primul element să se poziționeze pe primul rând, al doilea - pe al doilea, iar al treilea și al patrulea - pe al treilea rând:
<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;
padding: 10px;
border: 2px solid #696989;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
#elem1 {
grid-column: 1 / 4;
}
#elem2 {
grid-column: 2 / 3;
}
#elem3 {
grid-column: 1 / 2;
}
#elem4 {
grid-column: 3 / 4;
}
:
Exemplu
Să combinăm proprietățile grid-column
și grid-row:
<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 1fr;
border: 2px solid #696989;
padding: 10px;
height: 300px;
width: 400px;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
#elem1 {
grid-row: 1 / 3;
}
#elem2 {
grid-row: 1 / 2;
}
#elem3 {
grid-row: 1 / 2;
}
#elem4 {
grid-row: 2 / 3;
grid-column: 2 / 4;
}
:
Exemplu
Și acum să facem astfel încât primul și al cincilea bloc să ocupe întregul rând, al doilea bloc - două rânduri și două coloane, iar al treilea și al patrulea bloc - un rând și două coloane:
<div id="parent">
<div id="elem1">1</div>
<div id="elem2">2</div>
<div id="elem3">3</div>
<div id="elem4">4</div>
<div id="elem5">5</div>
</div>
#parent {
display: grid;
grid-template-columns: 2fr 1fr 1fr;
border: 2px solid #696989;
padding: 10px;
height: 300px;
width: 400px;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
#elem1 {
grid-row: 1 / 2;
grid-column: 1 / 4;
}
#elem2 {
grid-row: 2 / 4;
grid-column: 1 / 2;
}
#elem3 {
grid-row: 2 / 3;
grid-column: 2 / 4;
}
#elem4 {
grid-row: 3 / 3;
grid-column: 2 / 4;
}
#elem5 {
grid-row: 4 / 5;
grid-column: 1 / 4;
}
:
Vezi și
-
proprietatea
grid-row,
care definește poziția de început și de sfârșit a unui element în grid pe rânduri -
proprietatea
grid-column-start,
care definește poziția de început a unui element în grid pe coloane -
proprietatea
grid-column-end,
care definește poziția de sfârșit a unui element în grid pe coloane -
proprietatea
grid-template-columns,
care definește numărul și lățimea coloanelor în grid -
proprietatea
grid-auto-columns,
care definește numărul și lățimea coloanelor în gridul implicit