カテゴリ: CSS 更新日: 2026/01/08

CSSグリッド完全解説!auto-fitとauto-fillの違いとレスポンシブ設計での正しい使い分け

auto-fitとauto-fillの違いとレスポンシブ設計での使い分け
auto-fitとauto-fillの違いとレスポンシブ設計での使い分け

先生と生徒の会話形式で理解しよう

生徒

「CSSグリッドでauto-fitとauto-fillって出てきましたが、何が違うんですか?」

先生

「どちらも画面サイズに合わせてレイアウトを変える仕組みですが、考え方が少し違います」

生徒

「名前が似ていて混乱します…」

先生

「棚に箱を並べるイメージで考えると、とても分かりやすくなりますよ」

1. auto-fitとauto-fillが使われる理由

1. auto-fitとauto-fillが使われる理由
1. auto-fitとauto-fillが使われる理由

CSSグリッドレイアウトでは、画面の横幅に応じて要素の並び方を自動で変えることができます。 スマートフォン、タブレット、パソコンなど、画面サイズが違っても見やすくする設計を レスポンシブデザインと呼びます。

auto-fitとauto-fillは、そのレスポンシブデザインを簡単に実現するための指定方法です。 特にカード一覧や商品一覧など、数が変わる要素でよく使われます。

2. repeatとminmaxの基本的な考え方

2. repeatとminmaxの基本的な考え方
2. repeatとminmaxの基本的な考え方

auto-fitとauto-fillは、repeatとminmaxと一緒に使われることがほとんどです。 repeatは同じ幅の列を繰り返し作る指定で、minmaxは最小幅と最大幅を決める考え方です。

難しく聞こえますが、「最低これくらいの大きさで、余ったら広がっていい」 という指定だと思ってください。


<style>
.container {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 10px;
}
.item {
    background: lightblue;
    padding: 20px;
}
</style>

<div class="container">
    <div class="item">BOX1</div>
    <div class="item">BOX2</div>
    <div class="item">BOX3</div>
</div>
ブラウザ表示

3. auto-fillの特徴と動き

3. auto-fillの特徴と動き
3. auto-fillの特徴と動き

auto-fillは、箱を並べるための「場所」を優先して確保します。 中身が少なくても、置けるスペースがあれば空の枠を残します。

たとえるなら、スーパーの棚に商品が少なくても、棚そのものは消えない状態です。 レイアウトの形を安定させたい場合に向いています。


<style>
.grid-fill {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    gap: 8px;
}
.box {
    background: lightgreen;
    padding: 15px;
}
</style>

<div class="grid-fill">
    <div class="box">A</div>
    <div class="box">B</div>
</div>
ブラウザ表示

4. auto-fitの特徴と動き

4. auto-fitの特徴と動き
4. auto-fitの特徴と動き

auto-fitは、中身のある箱だけを使ってレイアウトを広げます。 空いている枠があっても、自動的に詰めて広がるのが特徴です。

こちらは、棚の商品が少ないときに、商品同士の間隔が広がるイメージです。 画面いっぱいに要素を広げたいときに便利です。


<style>
.grid-fit {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 8px;
}
.card {
    background: pink;
    padding: 15px;
}
</style>

<div class="grid-fit">
    <div class="card">1</div>
    <div class="card">2</div>
</div>
ブラウザ表示

5. レスポンシブ設計での使い分け

5. レスポンシブ設計での使い分け
5. レスポンシブ設計での使い分け

auto-fillは列の形を保ちたい一覧表や管理画面に向いています。 auto-fitはカード型デザインや画像ギャラリーなど、余白を減らしたい場面で活躍します。

どちらが正解というより、「見せたい形」によって選ぶことが大切です。

6. 初心者が混乱しやすいポイント

6. 初心者が混乱しやすいポイント
6. 初心者が混乱しやすいポイント

auto-fitとauto-fillは見た目が似ているため、違いに気づきにくいです。 要素の数を減らしたり、画面幅を大きく変えたりすると挙動の差が分かりやすくなります。

最初は実際にブラウザの幅を動かしながら確認することが理解への近道です。

カテゴリの一覧へ
新着記事
New1
Bootstrap
Bootstrap CDNの使い方を完全解説!初心者でもわかる読み込み順とSRIとdeferの設定
New2
Bootstrap
Bootstrapの自動レイアウトと比率指定を完全解説!.colと.col-6の使い分けを初心者向けにやさしく説明
New3
Bootstrap
Bootstrap 5 のカラーと背景色を完全ガイド!初心者向け色の使い分け解説
New4
Bootstrap
Bootstrap 5 の余白(margin / padding)ユーティリティ完全ガイド【mb-3など】
人気記事
No.1
Java&Spring記事人気No1
CSS
CSSグリッドレイアウト完全入門!display: grid の基本と使い方を初心者向けにやさしく解説
No.2
Java&Spring記事人気No2
CSS
CSSの複数セレクタ指定を完全解説!初心者でもわかるカンマ区切りの使い方
No.3
Java&Spring記事人気No3
CSS
CSSで要素のサイズを自動調整!autoとfit-contentの使い方
No.4
Java&Spring記事人気No4
CSS
CSSでテキストの折り返しを完全解説!初心者でもわかる基本と注意点
No.5
Java&Spring記事人気No5
CSS
CSSのフレックスボックスで要素を左右に寄せる方法を完全ガイド!初心者でもわかるjustify-content: space-between
No.6
Java&Spring記事人気No6
CSS
CSSフレックスボックス完全解説|Gridとの違いとFlexboxが得意なレイアウトパターンを初心者向けに理解しよう
No.7
Java&Spring記事人気No7
CSS
CSS Gridとは?初心者でもわかるグリッドレイアウトとフレックスとの違いをやさしく解説
No.8
Java&Spring記事人気No8
CSS
CSS Flexbox入門!display: flexの基本と適用方法を初心者向けに解説