Плиточка с корректными отступами в CSS

Давайте сделаем действительно работающую без проблем плиточку с отступами на марджинах. Пусть у нас изначально есть такая плиточка без отступов:

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 class="child">9</div>
</div>
css.parent {
  display: flex;
  flex-wrap: wrap;
  width: 300px;
  border: 1px solid red;
}
.child {
  box-sizing: border-box;
  width: 100px;
  height: 100px;
  border: 1px solid green;
}

Результат:

Давайте сделаем горизонтальные отступы между элементами с помощью margin.

Поставим для этого всем элементам-потомкам margin-right в значение 10px, а каждому третьему потомку занулим этот margin. Используем для этого псевдокласс nth-child, задав в нем параметр так, чтобы получать каждый третий элемент.

Увеличим также ширину родителя до 320px, чтобы дать место под отступы, и посмотрим, что у нас получается:

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 class="child">9</div>
</div>
css.parent {
  display: flex;
  flex-wrap: wrap;
  width: 320px;
  border: 1px solid red;
}
.child {
  box-sizing: border-box;
  width: 100px;
  height: 100px;
  margin-right: 10px;
  border: 1px solid green;
}
.child:nth-child(3n) {
  margin-right: 0;
}

Результат:

Итак, все работает. Давайте уберем последний элемент, чтобы в последнем ряду было меньше элементов и убедимся, что при этом у нас не будет проблем с этим последним рядом:

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-wrap: wrap;
  width: 320px;
  border: 1px solid red;
}
.child {
  box-sizing: border-box;
  width: 100px;
  height: 100px;
  margin-right: 10px;
  border: 1px solid green;
}
.child:nth-child(3n) {
  margin-right: 0;
}

Результат:

Задание 1

Сделайте плиточку по два элемента в ряд с расстоянием между элементами в 20px.