見出し画像

楽しくホームページを作ってみよう!-レイアウト(グリッド)

CSSは今ではかなりのことができるようになっています。フレックスボックスもそうですが、グリッドレイアウトも便利なものとなっています。

グリッドレイアウト

まず基本のHTML

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>グリッドテスト</title>
</head>
<body>
  
  <div class="wrapper">
  <div>One</div>
  <div>Two</div>
  <div>Three</div>
  <div>Four</div>
  <div>Five</div>
</div>

</body>
</html>

単純に上から縦に並びます。わかりやすくCSSで境目に線を表示させます。
方法は

.wrapper > div {
  border: 2px solid #ffa94d;
  border-radius: 5px;
  background-color: #ffd8a8;
  padding: 1em;
  color: #d9480f;
}

.wrapper > div {
 border: 2px solid #ffa94d;   ・・・ 線
 background-color: #ffd8a8;  ・・・ 背景色
 padding: 1em;        ・・・ 余白
}

これを簡単グリッドレイアウトにします。CSSを追加します。

.wrapper {
  display: grid;
  grid-template-columns: 200px 200px 200px;
}

割合で表示。以下3分割同じ割合

grid-template-columns: 1fr 1fr 1fr;

数字を入れて一部固定でも

grid-template-columns: 500px 1fr 2fr;

こんなレイアウトも簡単に

CSS

.wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: 100px;
}

.box1 {
  grid-column-start: 1;
  grid-column-end: 4;
  grid-row-start: 1;
  grid-row-end: 3;
}

.box2 {
  grid-column-start: 1;
  grid-row-start: 3;
  grid-row-end: 5;
}

表示

こんな感じでいろんなレイアウトができるようになります。

どんなものがあるかざっと解説してある参考サイト。



この記事が気に入ったらサポートをしてみませんか?