フロントエンドの用語一覧へ
このページの目次

align-itemsとは?

読み方:align-items

最終更新:2026/08/18

3秒でわかる

Flexbox や Grid で、主軸と直交する方向の揃え方を親から指定する CSS プロパティ。縦方向の中央揃えで最もよく使われます。

もう少し詳しく

どういうものか

align-items は、Flexbox や Grid のコンテナに対して、交差軸方向で子要素をどう揃えるかを指定する CSS プロパティです。flex-direction が row のとき主軸は横、交差軸は縦になるので、align-items は縦方向の揃えを決めます。flex-direction を column にすると主軸と交差軸が入れ替わり、同じ指定が横方向の揃えに変わります。

取る値は stretch(初期値、交差軸いっぱいに引き伸ばす)、flex-start、flex-end、center、baseline です。

なぜ必要か

縦方向の中央揃えは、Flexbox 以前は難題でした。高さが決まっていれば line-height で誤魔化せますが、中身の量で高さが変わる要素では成立しません。position を absolute にして transform でずらす回避策も、親の高さを別途決める必要がありました。align-items に center と書くだけで、この面倒がまとめて消えます。

具体例

.header {
  display: flex;
  <a href="/glossary/justify-content" class="text-primary font-medium underline underline-offset-2 hover:text-primary-dark">justify-content</a>: space-between; /* 主軸(横)の配置 */
  align-items: center;            /* 交差軸(縦)の揃え */
  height: 64px;
}

.card {
  display: flex;
  align-items: flex-start; /* 高さの違う要素を上端で揃える */
}

.card .icon {
  align-self: center; /* 子ひとつだけ揃え方を変える */
}
align-items: center
+------------------------------+
|        [logo]      [nav]     |  <- 縦中央に並ぶ
+------------------------------+

つまずきやすいところ

  • justify-content と役割を取り違える。justify-content は主軸、align-items は交差軸

  • flex-direction を column にした瞬間、align-items の center は横方向の中央揃えに変わる。方向を変えたのに揃えが崩れて見える原因はこれ

  • 効かないときは、親に display の flex か grid が付いていない

  • 初期値が stretch なので、指定していないのに子要素の高さが親に合わせて伸びていることがある

  • 1 つの子だけ別扱いにしたいときは親の値を変えず align-self を使う
  • 似た用語との違い

    プロパティ対象方向
    justify-content子全体主軸
    align-items子全体交差軸
    align-content行同士交差軸(複数行のとき)
    align-self子ひとつ交差軸


    覚え方

    justify は「並べる向き」、align は「それと直角の向き」と対で覚えます。方向を変えたら両方の意味が 90 度回ると意識すれば混乱しません。

    知識のつながり

    サイドバーと同じ推奨ルート・関連語を、まとめて確認できます。

    現在地align-itemsフロントエンド

    LEARN BY DOING

    この用語を、教材で使ってみる

    直接関連する編と、その編を含むコースです。用語だけで終わらず、ブラウザ上で実際に手を動かせます。

    コース

    CSSレイアウト:Flexbox・Gridで配置する

    12レッスン
    コース

    CSS入門:色・文字・余白で装飾する

    19レッスン
    コース

    HTML/CSS道場 ハレノヒ珈琲を開店させる10問

    10レッスン
    すべてのコースを見る