Својство grid-auto-flow

Својството grid-auto-flow го задава автоматското поставување на елементите во грид. Може да има вредности row - ги пополнува редовите со елементи, column - колони, dense - ги поставува елементите на сите празни места во мрежата; row dense - ги распоредува елементите, пополнувајќи секој ред и сите слободни места во мрежата; column dense - ги пополнува елементите секоја колона и сето слободно место во гридот.

Синтакса

cssселектор {
  grid-auto-flow: пополнуван дел од гридот;
}

Пример

Ајде да ги пополниме во табелата сите редови:

html<div id="parent">
  <div>1</div>
  <div>2</div>
  <div>3</div>
  <div>4</div>
  <div>5</div>
</div>
css#parent {
  display: grid;
  grid-auto-flow: row;
  grid-template-rows: 1fr 1fr;
  grid-template-columns: 1fr 1fr 2fr;
  border: 2px solid #696989;
  padding: 10px;
  width: 400px;
  height: 200px;
}
#parent > div {
  padding: 10px;
  border: 1px solid #696989;
}

Результат:

Пример

А сега да ги пополниме елементите сите колони во табелата:

html<div id="parent">
  <div>1</div>
  <div>2</div>
  <div>3</div>
  <div>4</div>
  <div>5</div>
</div>
css#parent {
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: 1fr 1fr;
  grid-template-columns: 1fr 1fr 2fr;
  border: 2px solid #696989;
  padding: 10px;
  width: 400px;
  height: 200px;
}
#parent > div {
  padding: 10px;
  border: 1px solid #696989;
}

Результат:

Пример

Ајде да ги поставиме сите елементи во табелата, така што нема да остане слободно место:

html<div id="parent">
  <div>1</div>
  <div>2</div>
  <div>3</div>
  <div>4</div>
  <div>5</div>
</div>
css#parent {
  display: grid;
  grid-auto-flow: dense;
  grid-template-rows: 1fr 1fr;
  grid-template-columns: 1fr 1fr 2fr;
  border: 2px solid #696989;
  padding: 10px;
  width: 400px;
  height: 200px;
}
#parent > div {
  padding: 10px;
  border: 1px solid #696989;
}

Результат:

Пример

А сега ајде да ги пополниме елементите сето слободно место во редовите:

html<div id="parent">
  <div>1</div>
  <div>2</div>
  <div>3</div>
  <div>4</div>
  <div>5</div>
</div>
css#parent {
  display: grid;
  grid-auto-flow: row dense;
  grid-template-rows: 1fr 1fr;
  grid-template-columns: 1fr 1fr 2fr;
  border: 2px solid #696989;
  padding: 10px;
  width: 400px;
  height: 200px;
}
#parent > div {
  padding: 10px;
  border: 1px solid #696989;
}

Результат:

Пример

Ајде да го смениме претходниот пример, за елементите да го пополатат сето слободно место во колоните:

html<div id="parent">
  <div>1</div>
  <div>2</div>
  <div>3</div>
  <div>4</div>
  <div>5</div>
</div>
css#parent {
  display: grid;
  grid-auto-flow: column dense;
  grid-template-rows: 1fr 1fr;
  grid-template-columns: 1fr 1fr 2fr;
  border: 2px solid #696989;
  padding: 10px;
  width: 400px;
  height: 200px;
}
#parent > div {
  padding: 10px;
  border: 1px solid #696989;
}

Результат:

Видете исто така

  • својство grid,
    кое ја задава скратената нотација на својствата на колони и редови
  • својство grid-auto-rows,
    кое го задава бројот и ширината на редовите во имплицитниот грид
  • својство grid-template-columns,
    кое го задава бројот и ширината на колоните во гридот
  • својство grid-template-rows,
    кое го задава бројот и ширината на редовите во гридот