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

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

Синтакса

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

Пример

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

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-у
  • својство grid-template-columns,
    које поставља број и ширину колона у grid-у
  • својство grid-template-rows,
    које поставља број и ширину редова у grid-у