1. はじめに
- Flexboxとは?
- CSSの「Flexible Box Layout Module」の略。
 - 柔軟で効率的なレイアウトを作成するためのレイアウトモデル。
 
 - Flexboxを使うメリット
- 複雑なレイアウトが簡単に実現できる。
 - レスポンシブデザインとの相性が良い。
 - 要素の中央揃えや整列が容易。
 
 
🧠 2. Flexboxの基本概念
- FlexコンテナとFlexアイテム
- 親要素:
display: flex;→ Flexコンテナ - 子要素:Flexアイテム
 
 - 親要素:
 
例:Flexコンテナの基本設定
.container {
  display: flex;
  border: 1px solid #ccc;
}
.item {
  background: lightblue;
  padding: 10px;
  margin: 5px;
}
- 主軸(Main Axis)と交差軸(Cross Axis)
- 主軸:要素が配置される主な軸(
flex-directionで決定) - 交差軸:主軸に対して垂直方向の軸
 
 - 主軸:要素が配置される主な軸(
 
🛠️ 3. Flexboxの主要プロパティ
① 親要素(Flexコンテナ)向けプロパティ
flex-direction:アイテムの配置方向を設定cssコードをコピーする.container { flex-direction: row; /* 横並び */ flex-direction: column; /* 縦並び */ }justify-content:主軸方向の配置cssコードをコピーする.container { justify-content: center; /* 中央揃え */ justify-content: space-between; /* 両端揃え */ }align-items:交差軸方向の配置cssコードをコピーする.container { align-items: center; /* 縦中央揃え */ }
② 子要素(Flexアイテム)向けプロパティ
flex-grow:要素の拡張cssコードをコピーする.item { flex-grow: 1; /* 余白を均等に拡張 */ }flex-shrink:要素の縮小cssコードをコピーする.item { flex-shrink: 0; /* 縮小しない */ }align-self:個別要素の配置cssコードをコピーする.item { align-self: flex-end; /* 下揃え */ }
📐 4. 実践:Flexboxを使ったレイアウト例
① ナビゲーションバー
.nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
HTML
<div class="nav">
  <div>Logo</div>
  <div>Menu</div>
</div>
② カードレイアウト
.container {
  display: flex;
  gap: 10px;
  flex-wrap: wrap; /* 折り返し */
}
.item {
  flex: 1 1 calc(33.333% - 10px);
  background: lightcoral;
  text-align: center;
  padding: 20px;
}
📱 5. レスポンシブデザインとの連携
flex-wrap:要素を折り返すcssコードをコピーする.container { flex-wrap: wrap; }- メディアクエリとの組み合わせcssコードをコピーする
@media (max-width: 768px) { .container { flex-direction: column; } } 
🐞 6. よくあるエラーと解決策
- 要素が中央揃えされない
→justify-contentとalign-itemsの確認 - アイテムのサイズが揃わない
→flex-growとflex-basisの設定 
🚀 7. Flexboxの応用テクニック
- ネガティブマージンを活用したデザイン
 - FlexboxとGridの組み合わせ
 - アニメーションと組み合わせる
 
🎓 8. まとめ
- Flexboxは効率的なレイアウト設計に最適
 - 主要プロパティを理解し、適切に使い分けることが重要
 - 練習と実践でFlexboxの感覚を掴もう
 

お問い合わせ