Vlastnost grid-row

Vlastnost grid-row nastavuje počáteční a koncovou pozici prvku v gridu nebo síti podle řádků. Hodnotami vlastnosti mohou být kladná nebo záporná čísla, uvedená přes lomítko. První číslo označuje počáteční pozici prvku, druhé - koncovou pozici. Pokud jako hodnotu zadáme kladné číslo, pozice prvku se počítá shora dolů. Při zadání záporného čísla se prvek umístí v obráceném pořadí, tj. zdola nahoru.

Syntaxe

cssselektor {
  grid-row: počáteční pozice / koncová pozice;
}

Příklad

Nastavme prvkům v gridu počáteční a koncové pozice:

html<div id="parent">
  <div id="elem1">1</div>
  <div id="elem2">2</div>
  <div id="elem3">3</div>
</div>
css#parent {
  display: grid;
  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;
}

Результат:

Příklad

A nyní zadejme ve vlastnosti grid-row záporná čísla:

html<div id="parent">
  <div id="elem1">1</div>
  <div id="elem2">2</div>
  <div id="elem3">3</div>
</div>
css#parent {
  display: grid;
  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;
}

Результат:

Příklad

Udělejme tak, aby první blok zabíral dva řádky:

html<div id="parent">
  <div id="elem1">1</div>
  <div id="elem2">2</div>
  <div id="elem3">3</div>
</div>
css#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 řádky */
}
#elem2 {
  grid-row: 1 / 2;
}
#elem3 {
  grid-row: 2 / 3;
}

Результат:

Příklad

Nyní přiřaďme čtvrtému bloku tři řádky:

html<div id="parent">
  <div id="elem1">1</div>
  <div id="elem2">2</div>
  <div id="elem3">3</div>
  <div id="elem4">4</div>
</div>
css#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;
}

Результат:

Příklad

Zkombinujme vlastnosti grid-row a grid-column:

html<div id="parent">
  <div id="elem1">1</div>
  <div id="elem2">2</div>
  <div id="elem3">3</div>
  <div id="elem4">4</div>
</div>
css#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;
}

Результат:

Příklad

A nyní udělejme tak, aby první a pátý blok zabíraly celý řádek, druhý blok - dva řádky a dva sloupce, a třetí a čtvrtý blok - jeden řádek a dva sloupce:

html<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>
css#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;
}

Результат:

Viz také

  • vlastnost grid-column,
    která nastavuje počáteční a koncovou pozici prvku v gridu podle sloupců
  • vlastnost grid-row-start,
    která nastavuje počáteční pozici prvku v gridu podle řádků
  • vlastnost grid-row-end,
    která nastavuje koncovou pozici prvku v gridu podle řádků