Svojstvo grid-auto-flow

Svojstvo grid-auto-flow zadaje automatsko postavljanje elemenata u grid-u. Može imati vrednosti row - popunjava redove elementima, column - kolone, dense - postavlja elemente na sva prazna mesta u mreži; row dense - raspoređuje elemente, popunjavajući svaki red i sva slobodna mesta mreže; column dense - popunjava elementima svaku kolonu i svo slobodno mesto u grid-u.

Sintaksa

cssselektor {
  grid-auto-flow: popunjen deo grid-a;
}

Primer

Hajde da popunimo u tabeli sve redove:

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;
}

Результат:

Primer

A sada popunimo elementima sve kolone u tabeli:

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;
}

Результат:

Primer

Hajde da postavimo sve elemente u tabeli, tako da ne ostane slobodnog mesta:

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;
}

Результат:

Primer

A sada hajde da popunimo elementima svo slobodno mesto u redovima:

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;
}

Результат:

Primer

Hajde da izmenimo prethodni primer, kako bi elementi popunili svo slobodno mesto u kolonama:

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;
}

Результат:

Vidi takođe

  • svojstvo grid,
    koje zadaje skraćeni zapis svojstava kolona i redova
  • svojstvo grid-auto-rows,
    koje zadaje broj i širinu redova u implicitnom grid-u
  • svojstvo grid-template-columns,
    koje zadaje broj i širinu kolona u grid-u
  • svojstvo grid-template-rows,
    koje zadaje broj i širinu redova u grid-u