CSSグリッドのセル内垂直軸方向の配置

グリッドのセル内での要素の垂直軸方向の配置には、 親要素で設定するプロパティ align-itemsを使用します。このプロパティの動作は、 ブラウザの開発者ツールでグリッドを表示することで確認できます。

軸の先頭揃え

セル内の要素を垂直軸の先頭に揃えてみましょう:

html<div id="parent">
  <div>1</div>
  <div>2</div>
  <div>3</div>
  <div>4</div>
  <div>5</div>
</div>
css#parent {
  display: grid;
  align-items: flex-start;
  grid-template-columns: 100px 100px;
  grid-gap: 10px;
  padding: 10px;
  border: 2px solid #696989;
  height: 200px;
  width: 400px;
}
#parent > div {
  grid-gap: 10px;
  padding: 10px;
  box-sizing: border-box;
  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;
  align-items: center;
  grid-template-columns: 100px 100px;
  grid-gap: 10px;
  padding: 10px;
  border: 2px solid #696989;
  height: 200px;
  width: 400px;
}
#parent > div {
  grid-gap: 10px;
  padding: 10px;
  box-sizing: border-box;
  border: 1px solid #696989;
}

Результат:

ブラウザの開発者ツールでグリッドを確認します:

軸の末尾揃え

今度は要素の配置を垂直軸の末尾に変更してみます:

html<div id="parent">
  <div id="elem1">1</div>
  <div>2</div>
  <div>3</div>
  <div>4</div>
  <div>5</div>
</div>
css#parent {
  display: grid;
  align-items: end;
  grid-template-columns: 100px 100px;
  grid-gap: 10px;
  padding: 10px;
  border: 2px solid #696989;
  height: 200px;
  width: 400px;
}
#parent > div {
  grid-gap: 10px;
  padding: 10px;
  box-sizing: border-box;
  border: 1px solid #696989;
}
#elem1 {

}

Результат:

ブラウザの開発者ツールでグリッドを確認します:

実践的な課題

Задание 1

2つの列に配置された6つの要素からなるグリッドを作成してください。 セル内の要素を垂直軸の先頭に揃える設定を行ってください。

Задание 2

次に、要素を3つの列に配置し、グリッドのセル内の要素が垂直軸の中央に揃うように設定してください。

Задание 3

前の課題を変更し、要素の配置が垂直軸の末尾で行われるようにしてください。