• HTML/CSS

FlexboxとCSS Gridの違いについて調べてみた

FlexboxとCSS Gridの違いについて調べてみた

こんにちは。
CSSでレイアウトを組むときに、Flexboxが欠かせない存在になっている、satomiです。

現在は display:flex を使ってレイアウトを組むことが多いのですが、
グリッドレイアウトのサイトを調べていたとき display:grid を使っているサイトがあり
違いを調べてみました。

二つの違いについて

ソースコードはそれぞれ「1x」でスマホ、「0.5x」でPCサイトのレイアウトになります。

Flexbox(フレックスボックス)

・特定のレイアウトにするため、HTML構造上不要な親要素を作る必要がある。
・指定方法が単純明快なのでレイアウトを組みやすい。

.asideと.mainの親要素に.wrapがあります。
CSSは各所にマージンの指定などがあります。



CSS Grid Layout(CSSグリッドシステム)

・不要な要素を増やさずに、グリッドレイアウトが組める。
・サイズや余白など1箇所でまとめて指定できる。

.wrapがなくなり、HTMLがシンプルになりました。
また、CSSも設定が一箇所にまとまり見やすくなっていると思います。


「CSS Grid Layout」のお役立ちサイト
https://grid.layoutit.com/
https://griddy.io/

まとめ

2021年9月時点でCSS Grid LayoutはIE11もベンダープレフィックスを使って対応する形となっているようです。Can I use参照

IE11のサポートも2022年6月15日に終了するようなので、
CSS Gridレイアウトを取り入れていこうと思っている方もいらっしゃるのではないでしょうか。

私も少しずつ取り入れて行きたいと思います!以上です、日々勉強!

  • HTML/CSS
宮野 聡美

MIYANO SATOMI Front-end Engineer / 宮野 聡美

記事をもっと見る

Our Signature Products, Born from Insight.

提案から生まれた、
MARBLEの代表プロダクト

お客様の課題を起点に、MARBLEが自ら構想し、
仕組みからデザイン、開発、運用まで一貫してつくり上げたプロダクト群です。
業務改善、運営効率化、新たな顧客体験の創出など、
企業の事業成長に直結する“実装された解決策”を形にしています。

  1. 01 入退場システム

    Entry System

    入退場システムのイメージ

    全国15店舗、会員数50万人以上のこども向けパークで稼働する入退場・決済・顧客管理システム。
    受付の効率化と回転率の向上を実現し、運営データの一元管理を可能にしています。

  2. 02 自動配送システム

    Delivery Routing

    50台のトラック、年間350日の配送を最適化する自動ルート生成システム。
    紙のFAXで届く約500件の配送情報をデジタル化し、最適ルートを自動で算出することで、大幅な業務効率化を実現しました。

  3. 03 会話型コマース連携

    Auto Routing

    ライブチャットでの接客からEC購入までを一つの導線でつなぐ会話型コマースシステム。
    リアルタイムの対話で顧客の購買意欲を高め、高いコンバージョン率につながる仕組みを構築しています。