Problémy dlaždíc vo flexboxoch v CSS

Prvý problém dlaždíc je v podstate okamžite zrejmý - je veľmi nepohodlné, že rodič musí mať explicitne nastavenú výšku. Veď sa nám môže jednoducho stať, že počet blokov sa bude meniť dynamicky a ich počet bude niekedy menší, niekedy väčší ako 9.

A druhý problém nastane, ak je počet blokov taký, že v poslednom rade bude nedostatočný počet blokov. V tomto prípade bude posledný rad vyzerať otrasne:

html<div class="parent">
  <div class="child">1</div>
  <div class="child">2</div>
  <div class="child">3</div>
  <div class="child">4</div>
  <div class="child">5</div>
  <div class="child">6</div>
  <div class="child">7</div>
  <div class="child">8</div>
</div>
css.parent {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 320px;
  border: 1px solid red;
}
.child {
  box-sizing: border-box;
  width: 100px;
  height: 100px;
  border: 1px solid green;
}

Результат:

Vychádza nám, že dokonca aj horizontálne hodnotenie space-between v našom prípade funguje zle.

Zhrňme si: ak je počet vašich potomkov vždy konštantný a normálne sa zmestí do rodiča, tak dlaždica na báze space-between je celkom pohodlná vec. V opačnom prípade bude treba vymyslieť niečo iné.

Задание 1

Daných je 12 elementov. Vytvorte z nich dlaždicu po 4 elementoch v rade so šírkou každého elementu 100px a medzerou medzi nimi 20px.

Задание 2

Daných je 12 elementov. Vytvorte z nich dlaždicu po 3 elementoch v rade so šírkou každého elementu 150px a medzerou medzi nimi 10px.