Auto Layoutで効率的なレイアウト
※このページには広告(PR)リンクが含まれます
🎯 このレッスンのゴール:最後の3問に答えられること
- ラベルの文字数に合わせてボタンの幅が自動で伸縮するようにしたい場合、ボタンの幅の設定はどれですか?
- ナビバーでロゴを左端、CTAを右端に、手作業の位置調整なしで配置したい場合の設定はどれですか?
- Auto Layoutのカードの右上に「NEW」バッジを重ねたいが、他の要素の並びは崩したくありません。適した方法はどれですか?
本文は約7分で読めます。先に問題を頭に入れてから読むと、答えの箇所が見つけやすくなります。
すぐに問題に挑戦する ↓Auto Layout — Figmaのレイアウトエンジンを完全制覇
Auto LayoutはFigmaが他のデザインツールと一線を画す最大の機能です。CSSのFlexboxをデザインツール上で完全に再現し、「テキストが増えたら自動でボタンが広がる」「要素を追加したらナビゲーションが自動で整列する」といった動的レイアウトをデザイン段階から実現します。
Auto Layoutを理解することで、デザインとコードの乖離がほぼなくなり、エンジニアへのハンドオフ品質が劇的に向上します。このレッスンでは基本から応用まで、実際のコンポーネント作成を通じて習得します。
Auto Layout — Hug / Fill / Fixed サイジングモデル
Auto Layoutの基本概念
Auto Layoutとは何か
Auto Layoutは、フレーム内の子要素を「行(水平)」または「列(垂直)」方向に自動配置するレイアウト機能です。要素を追加・削除・サイズ変更したとき、コンテナが自動的に調整されます。
CSSとの対応関係を理解すると習得が早くなります。
| Auto Layout設定 | CSSプロパティ |
|---|---|
| 方向: 水平 | flex-direction: row |
| 方向: 垂直 | flex-direction: column |
| Gap(要素間の間隔) | gap / column-gap / row-gap |
| Padding(内側余白) | padding(上下左右個別設定可) |
| 揃え | align-items / justify-content |
| Wrap(折り返し) | flex-wrap: wrap |
💡 エンジニアにデザインを渡すとき、Auto Layoutで作られたフレームはFigmaが自動でCSS値を表示してくれます。Dev Modeで確認すると、paddingやgapの数値がそのままコードに使えます。
Auto Layoutの適用方法
基本操作
方法1: ショートカット(最速)
- ◆対象の要素またはフレームを選択
- ◆
Shift + Aを押すだけでAuto Layoutが適用される
方法2: 右パネルから追加
- ◆要素を選択して右パネルにスクロール
- ◆「Add auto layout」ボタン(+アイコン)をクリック
方法3: 複数要素から作成
- ◆並べたい複数の要素をShift+クリックで選択
- ◆
Shift + Aを押すとAuto Layoutフレームが自動生成される
⚠️ Auto Layoutを適用すると、選択した要素がフレーム内に包まれます。既にフレームがある場合はそのフレームにAuto Layoutが追加されます。操作を間違えた場合は
Ctrl/Cmd + Zで元に戻せます。
パディングとギャップの設定
Padding(内側余白)
Auto Layoutパネルの「Padding」セクションで設定します。4つの値を個別に設定できます。
- ◆上下左右を同一値に設定: Paddingフィールドに単一の数値を入力
- ◆上下・左右を別々に設定: 縦(TB)と横(LR)に分けて入力
- ◆4辺を個別設定: 展開アイコンをクリックしてTop / Right / Bottom / Leftを個別入力
UIコンポーネントの推奨Padding値:
| コンポーネント | 推奨Padding |
|---|---|
| 小ボタン(SM) | 上下8px / 左右16px |
| 標準ボタン(MD) | 上下12px / 左右24px |
| 大ボタン(LG) | 上下16px / 左右32px |
| 入力フィールド | 上下12px / 左右16px |
| カード | 上下20px / 左右24px |
| ナビバー | 上下16px / 左右24px |
Gap(要素間の間隔)
Gap(Spacing between items)は子要素同士の間隔を設定します。
- ◆固定Gap: 数値を入力(例: 8px)
- ◆Auto Gap(Space between): 子要素を等間隔に広げる(CSSの
justify-content: space-betweenと同等)
💡 「Auto(Space between)」は、ナビゲーションのロゴ + メニューリスト + CTAボタンを左端・中央・右端に配置したいときに便利です。一切手動で位置を調整せずに均等配置が完成します。
3つのサイジングモード
Hug Contents(コンテンツに合わせて縮小)
子要素のサイズ合計に合わせてコンテナが自動サイズになります。
特徴:
- ◆テキストを変更するとフレームが自動伸縮する
- ◆常に必要最小限のサイズになる
- ◆コンテンツ量が不定なUIパーツに最適
最適な用途:
- ◆ボタン(ラベルに合わせてサイズ変化)
- ◆タグ・バッジ・チップ
- ◆ツールチップ
- ◆ナビゲーションの各メニュー項目
Fill Container(親に合わせて拡大)
親フレームの残りスペースを埋めるように伸びます。CSSの flex: 1 または width: 100% に相当します。
特徴:
- ◆親のサイズが変わると追従する
- ◆兄弟要素が複数ある場合は均等に分配される
- ◆レスポンシブデザインの基本設定
最適な用途:
- ◆テキスト入力フィールド
- ◆グリッドの各カラム
- ◆カードコンテンツエリア
- ◆フレックスレイアウトの伸縮要素
Fixed(固定サイズ)
幅・高さを固定値で指定します。コンテンツが溢れると見えなくなります(overflow: hidden相当)。
最適な用途:
- ◆アイコン(16px / 24px / 32px)
- ◆サムネイル画像(比率を維持したい場合)
- ◆バッジ・通知カウンター
- ◆サイドバー(固定幅240px等)
⚠️ Fixedサイズ設定時、コンテンツが溢れてクリッピングされることがあります。特にテキストを含む要素で注意してください。Clip contentオプションでコンテンツのはみ出しを制御できます。
ネストされたAuto Layout
ネストの概念
Auto Layoutのフレームを入れ子にすることで、複雑なレイアウトが実現できます。外側フレームが全体の方向を決め、内側フレームがセクションの方向を決めます。
典型的なネスト構造:
Card(垂直 Auto Layout)
└ CardImage(Fixed: 幅Fill × 高さ200px)
└ CardBody(垂直 Auto Layout、Padding 16px)
└ CardTitle(Hug)
└ CardDescription(Fill × Hug)
└ CardFooter(水平 Auto Layout)
└ Price(Hug)
└ Button(Hug)
レスポンシブカードの作成実践
ステップ1: カードフレームを作成
- ◆
Fを押してフレームを作成(幅320px × 高さ自動) - ◆
Shift + AでAuto Layoutを垂直方向に適用 - ◆幅を「Fill」、高さを「Hug」に設定
ステップ2: 画像エリアを追加
- ◆カードフレーム内に長方形を作成
- ◆幅「Fill」、高さ「Fixed 200px」に設定
- ◆塗りを画像(Image fill)に変更
ステップ3: コンテンツエリアを追加
- ◆カードフレーム内に新しいフレームを作成
- ◆
Shift + Aで垂直Auto Layout適用 - ◆Padding: 上下16px / 左右20px、Gap: 8px
- ◆幅「Fill」、高さ「Hug」に設定
ステップ4: タイトル・本文・ボタンを追加
- ◆テキスト(タイトル): 幅「Fill」
- ◆テキスト(本文): 幅「Fill」、行間1.7
- ◆ボタンフレーム: Hug × Hug、Padding 12px 24px
ナビバーの実践作成
ナビバー設計の考え方
ナビゲーションバーは「ロゴ(左)」「メニュー(中)」「CTA(右)」の3グループが基本構成です。Auto Layoutの「Space between」を活用すると、手動で位置調整せず完成します。
作成手順:
- ◆横幅1440px、高さ自動のフレームを作成
- ◆
Shift + Aで水平Auto Layoutを適用 - ◆Padding: 上下16px / 左右40px
- ◆Gapを「Auto(Space between)」に設定
- ◆Align(縦方向): Center(垂直中央揃え)
- ◆幅を「Fill」、高さを「Hug」に設定
各要素の設定:
- ◆ロゴグループ: 幅「Hug」
- ◆メニューリスト(水平Auto Layout、Gap 32px): 幅「Hug」
- ◆CTAボタン: 幅「Hug」
💡 「Space between」を設定した時点で、ロゴは左端・CTAは右端・メニューは中央付近に自動配置されます。ブレイクポイントごとにフレーム幅を変えるだけで、ナビバーが自動でリフロー(再配置)します。
絶対位置(Absolute Position)
Auto Layoutフレーム内の特定の子要素だけをフローから除外して、絶対位置で配置できます。
設定方法:
- ◆Auto Layoutフレーム内の要素を選択
- ◆右パネルの「Absolute position」アイコンをクリック
- ◆X・Y座標で位置を指定
主な用途:
- ◆カード上のバッジ(「NEW」「SALE」など)
- ◆アバター画像上のオンラインステータス表示
- ◆モーダルの閉じるボタン(右上固定)
- ◆フローティングアクションボタン
🏋️実践ワーク
- ◆以下の仕様でボタンコンポーネントを作成してください。
- ◆テキスト: 「カートに追加」、フォント14px Medium、色: 白
- ◆背景: #6366f1、角丸: 8px
- ◆Padding: 上下12px / 左右24px、Auto Layout: 水平
- ◆サイジング: 幅「Hug」高さ「Hug」
- ◆テキストを「カートに追加(10アイテム)」に変えてボタンが自動拡張されることを確認する
- ◆以下の仕様でカードコンポーネントを作成してください。
- ◆カード外枠: 幅320px、Auto Layout垂直、Gap 0、角丸12px、Shadow
- ◆画像エリア: 幅Fill × 高さ180px Fixed
- ◆コンテンツエリア: Auto Layout垂直、Padding 16px、Gap 8px、幅Fill
- ◆タイトル: 16px Bold、幅Fill
- ◆本文: 14px Regular、幅Fill、行間1.7、3行
- ◆フッター: Auto Layout水平、Space between、幅Fill
- ◆作成したカードを3列グリッドに並べるフレームを作成してください。
- ◆外枠: 1440px、Auto Layout水平、Padding 40px、Gap 24px
- ◆各カード: 幅「Fill」に変更
📝まとめ
Auto LayoutはFigmaの心臓部です。Hug・Fill・Fixedの3つのサイジングモードとPadding・Gapの設定を組み合わせることで、CSS Flexboxと同等のレイアウトをデザイン段階から表現できます。ネスト構造を理解してカードとナビバーを自在に作れるようになれば、実務レベルのUIコンポーネント設計が可能になります。次のレッスンではAuto Layoutをベースにしたレスポンシブデザインを学びます。
理解度チェック
3問全問正解でこのレッスンが「完了」になり、コースの全レッスンを完了すると修了証が発行されます。何度でも挑戦でき、全問正解すると全問の解説が読めます(不正解のときは正解した問題の数だけ表示され、30秒後に答え直せます)。
Q1.ラベルの文字数に合わせてボタンの幅が自動で伸縮するようにしたい場合、ボタンの幅の設定はどれですか?
Q2.ナビバーでロゴを左端、CTAを右端に、手作業の位置調整なしで配置したい場合の設定はどれですか?
Q3.Auto Layoutのカードの右上に「NEW」バッジを重ねたいが、他の要素の並びは崩したくありません。適した方法はどれですか?
「実践Webデザイン - Figma完全マスター講座」全12レッスンを無料で修了しよう
- ✓ 理解度チェックの採点と、合格レッスンの記録
- ✓ 全レッスン合格で修了証を発行(URLでシェア・LinkedInに追加できます)
- ✓ 全レッスンの解説動画と、続きから再開できる学習ダッシュボード
完全無料・クレジットカード不要
このレッスンで使うツール・次の学び方 PR
Audible(Amazonのオーディオブック) ↗ビジネス書・マーケティングの本を通勤中や家事の合間に聴いて学べる。プレミアムプランは30日間の無料体験あり(2026年11月時点)

関連するブログ記事
関連レッスン(他のコースから)
HTML/CSSコーディング入門
ボックスモデルとレイアウト
HTMLのすべての要素は目に見えない「箱(ボックス)」として扱われます。
30分本文は無料で閲覧可
HTML/CSSコーディング入門
Flexboxレイアウト
CSS Flexbox(フレックスボックス)は、1次元のレイアウト(横または縦方向への要素配置)を直感的かつ強力に実現するレイアウトモジュー
30分本文は無料で閲覧可
デザイン基礎 - 視覚コミュニケーション入門
レイアウトとグリッドシステム
レイアウトはデザインの「骨格」です。
35分本文は無料で閲覧可
UI/UXデザイン実践講座
UI/UXデザインの基本概念と違い
「UIデザイナー」と「UXデザイナー」という言葉は、今や求人票やポートフォリオで当たり前に使われています。
30分無料公開
UI/UXデザイン実践講座
ユーザーリサーチの方法論
「自分はユーザーのことをよく知っている」という思い込みは、UXデザイン最大の敵です。
30分本文は無料で閲覧可
UI/UXデザイン実践講座
ペルソナとカスタマージャーニーマップ
ユーザーリサーチで収集したデータは、そのままでは設計チームが活用しにくい状態です。
30分本文は無料で閲覧可