
【目次】
- 1-1_Web制作の旅へ!アイデアをカタチにする最初のステップ
- 1-2_Webの仕組み:コードとブラウザの協働作業
- 1-3_Web制作の最強コンビ:HTMLとCSSの役割分担
- 2-1_HTMLの基本構文
- 2-2_テキスト情報を構造化する
- 2-3_画像とリンクの扱い
- 2-4_Web構造を明確にするセマンティックタグ
- 3-1_CSSの基本構造と適用方法
- 3-2_空間を制御する:ボックスモデルの理解
- 3-3_現代のレイアウト技術:Flexboxの基礎
- 4-1_必須スキル:レスポンシブデザイン
- 4-2_次の扉:動きを学ぶJavaScriptへのロードマップ
- 5-1_HTMLセマンティックタグ チートシート
- 5-2-1_Flexbox 基本プロパティ チートシート
- 5-2-2_Flexbox 実務テクニック チートシート
- 5-3-1_Grid 基本プロパティ チートシート
- 5-3-2_Grid 実務テクニック チートシート
- 5-4_CSS リセット & 標準化スニペット集
- 6-1_Box Model Visualizer
5-2-2_Flexbox 実務テクニック チートシート
Flexboxは、主に一方向(行または列)のレイアウトと、その中のアイテムの整列・順序・空間分配を扱うための強力なツールです。コンポーネントレベルのレイアウトに最適です。
1. Flexコンテナ(親要素)に適用する主要テクニック
Flexコンテナに適用することで、子要素(Flexアイテム)の基本的な振る舞いを決定します。
| プロパティ | 値 | 役割と動作 (実務での使用例) |
|---|---|---|
display | flex | 要素をFlexコンテナに変換します。これがなければ何も始まりません。 |
flex-direction | row (横) / column (縦) | アイテムの並ぶ方向を定義します。ナビゲーションメニュー (row) やフォームのグループ化 (column) に必須。 |
justify-content | center, space-between, space-around | 主軸(Main Axis、flex-directionで定義された方向)に沿って、アイテム間の空間を分配します。ヘッダーのロゴとメニューを両端に寄せる (space-between) のに多用されます。 |
align-items | center, flex-start, flex-end, stretch | 交差軸(Cross Axis、主軸と垂直な方向)に沿って、アイテムを整列します。要素を垂直方向の中央に配置する (center) のに最も頻繁に使われます。 |
flex-wrap | wrap | コンテナの幅を超える場合に、アイテムを自動的に次の行へ折り返させます。レスポンシブなタグリストやカードのタイル表示には必須です。 |
gap | 1rem または 10px 20px | Flexアイテム間の**間隔(余白)**を定義します。marginの相殺を気にせず、シンプルに間隔を設定できます。Gridと同じく実務で非常に多用されます。 |
2. Flexアイテム(子要素)に適用する主要テクニック
個々のFlexアイテムに適用することで、コンテナ内の空間をどのように占有するか、どのように整列するかを制御します。
| プロパティ | 値 | 役割と動作 (実務での使用例) |
|---|---|---|
flex-grow | 1, 0 など | 増加の比率。利用可能な空き空間をどれだけ占有するかを定義します。1を設定すると、残りの空間をすべて均等に分け合います。メインコンテンツを拡張させるのに便利。 |
flex-shrink | 1, 0 など | 縮小の比率。アイテムの合計サイズがコンテナを超えた場合に、どれだけ縮小するかを定義します。特定のアイテムを絶対に縮小させたくない場合 (0) に使用します。 |
flex-basis | auto, 200px, 25% | アイテムが空間を占有する前の初期サイズを定義します。この値がflex-growやflex-shrinkの計算の出発点になります。 |
flex | 1 1 auto (推奨デフォルト) | flex-grow, flex-shrink, flex-basis のショートハンドです。例えば、flex: 1 は 1 1 0% (空き空間を占有し、縮小もする) のショートハンドとして非常によく使われます。 |
order | 0, 1, -1 など | HTMLのマークアップ順序に関係なく、Flexアイテムの視覚的な表示順序を定義します。モバイルでアイテムの順番を変える際に使用。 |
align-self | center, flex-start, flex-end | 親のalign-itemsの設定を上書きし、個々のアイテムを交差軸上で整列させます。特定のアイテムだけを上に寄せたい場合などに使います。 |
3. 実務で必須のテクニック:センタリング
Flexboxの最も強力で実用的な機能の一つは、水平・垂直方向の完璧なセンタリングです。
| 目的 | CSSコード (コンテナ) |
|---|---|
| 垂直・水平方向の完璧なセンタリング |

