入れ子になったCSSグリッド

グリッドシステムでは、作成したグリッド内に新たな入れ子グリッドを追加する機能があります。入れ子グリッドは、サイトのブロック内に小さな要素を配置する際に広く使用されています。 この機能を利用するには、子要素自体にdisplayプロパティをgridに設定する必要があります。

例として、グリッドのセルの1つに別のグリッドを作成してみましょう:

html<div id="parent">
  <div id="elem1">1</div>
  <div id="elem2">2</div>
  <div id="elem3">3</div>
  <div id="elem4">
    <div>5</div>
    <div>6</div>
    <div>7</div>
    <div>8</div>
  </div>
</div>
css#parent {
  display: grid;
  grid-template: 1fr 1fr / 1fr 1fr;
  grid-gap: 5px;
  border: 2px solid #696989;
  padding: 10px;
  width: 600px;
  height: 200px;
}
#parent > div {
  padding: 10px;
  border: 1px solid #696989;
}
#elem4 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  grid-gap: 5px;
  border: 2px solid #696989;
}
#elem4 > div {
  grid-gap: 5px;
  padding: 6px;
  box-sizing: border-box;
  border: 1px solid #696989;
}

Результат:

Задание 1

3つの列に配置された5つの要素からなるグリッドがあるとします。2番目の要素内に、さらに3つの子要素を持つ入れ子グリッドを作成してください。

Задание 2

前の課題を変更して、入れ子グリッド内に5つの子要素が含まれるようにしてください。

Задание 3

1番目と3番目の要素それぞれに、3つの子要素を持つ入れ子グリッドを作成してください。