MarkupGenMarkupGen
ドキュメントリソースブログ活用事例比較
ログイン無料で変換する
  1. MarkupGen
  2. /ブログ
  3. /Figma Auto LayoutからReactへ:フレームからコンポーネントへ
ブログに戻る

公開日 2026-08-20 · 執筆 MarkupGen チーム

Figma Auto LayoutからReactへ:フレームからコンポーネントへ

Figma Auto LayoutからReactへ:フレームからコンポーネントへ

簡単な答え: FigmaのAuto Layoutプロパティ(direction、gap、padding、整列)は、Reactでも他の出力形式と同じFlexboxのCSSにマッピングされます。異なるのは、Reactがその上に追加するすべての要素です。どのAuto Layoutフレームをそれぞれ独立したコンポーネントにするか、Figmaのコンポーネントバリアントをpropsにどうマッピングするか、繰り返しや条件によって変化する子要素をどう扱うか——こうした判断が必要になります。

CSSのマッピングは変わらない——変わるのはコンポーネントの境界

すでにAuto LayoutがFlexboxにどうマッピングされるかを知っている場合、スタイリングの部分はおなじみのはずです。directionはflex-directionに、gapはgapに、paddingはpaddingに、整列はjustify-content/align-itemsになります。Reactになっても、この対応関係は何も変わりません。

Reactが追加するのは、CSSレイヤーの上にある構造です——フラットなHTML/CSSエクスポートでは考える必要のなかった判断です。

Figmaの概念 Reactでの対応
複数箇所で使い回されるAuto Layoutフレーム 繰り返しのマークアップではなく、独立したコンポーネント
Figmaのコンポーネントバリアント(例:ボタンのサイズ/状態) コンポーネントのprops(size、variant、disabled)
子インスタンスが繰り返されるフレーム(リスト、グリッド) props/コンテンツの配列に対する.map()
「コンテンツに合わせて縮む」vs「コンテナいっぱいに広がる」リサイズ コンポーネント内の固定ピクセル幅ではなく、親のflexルールで処理されるレイアウト
入れ子のAuto Layoutフレーム 再利用や論理的な分離が正当化される場合にのみ、入れ子のコンポーネントにする(フレームごとに1コンポーネントにはしない)

手作業での変換でよくある失敗

  • コンポーネント化しすぎること。 入れ子になったAuto Layoutフレームをすべて別々のコンポーネントファイルにすると、再利用性を高めることなく間接参照だけが増えた、一行だけのラッパーコンポーネントが延々と連なるツリーができあがります。フレームが独立したコンポーネントになる価値があるのは、他の場所でも再利用されるか、切り出すことでコードが本当に読みやすくなる場合だけです。
  • バリアントのマッピングを失うこと。 Figmaのコンポーネントバリアント(例えばボタンのdefault/hover/disabledといった状態)は、ハードコードされた4つの別々のコンポーネントではなく、propsになるべきものです。これを省略すると、本来ひとつの再利用可能なボタンだったものが、状態ごとにコピー&ペーストされたマークアップになってしまいます。
  • 本来動的であるべきものをハードコードすること。 デザイン内にサンプル項目が3つあったからという理由でフレームが3回繰り返されている場合、それは同じJSXの3つのコピーになるべきではなく、配列からレンダリングされるひとつのコンポーネントになるべきです。
  • デザインが流動的なリサイズを意図しているのに、固定ピクセル幅を使うこと。 Auto Layoutの「コンテナいっぱいに広がる」挙動は、コンポーネントのCSSではflex-growやパーセンテージベースのサイズ指定に変換されるべきであり、元のフレームのレスポンシブな意図を壊してしまう固定widthにすべきではありません。

MarkupGenがこれをどう扱うか

MarkupGenのReact出力は、他の出力形式と同じ4ステップのワークフローに従います。プラグインでフレームをエクスポートすると、構造・スタイル・画像・コンポーネントの関係性がまとめて取り込まれます。次にAIがその実際の構造からコードを構築します。必要であればアプリ内エディタでコンテンツ・フォント・レイアウトを調整し、最後に最終パッケージをエクスポートします。Auto Layoutのdirection・gap・padding・整列は、プレーンCSSエクスポートの場合と同じように、各コンポーネント内のFlexboxルールにマッピングされ、リサイズ制約は固定サイズではなくレスポンシブな挙動として引き継がれます。各エクスポートには自動でAI品質スコアが付与され、ライブプレビューを元のデザインと比較するため、そのエクスポートを出荷前にもう一度見直すべきかどうかがひと目でわかります。

FigmaファイルからReactコンポーネントまでのステップバイステップの全体像——出力形式の選択も含めて——は、Figma to React: A Practical Workflowを参照してください。

自分のデザインで試してみる

実際のデザインのAuto Layout構造がReactコンポーネントにどう変換されるかを見ることは、そのコンポーネント化が自分で手作業で組んだ場合と一致しているかを判断する最も早い方法です。自分のFigmaファイルでMarkupGenを無料で試してみるか、含まれる内容を知りたい場合はFigma to Reactコンバーターのページをご覧ください。

試す: Figma to React

関連記事

Figma to HTML vs React vs Tailwind:どれを選ぶべきかブログ

Figma to HTML vs React vs Tailwind:どれを選ぶべきか

MarkupGenで最も多く聞かれる3つの出力形式に関する意思決定ガイド——FigmaをいつHTML/CSSに書き出すべきか、いつReactに書き出すべきか、そしてTailwindが実際どこに当てはまるのか。

続きを読む
Figma to Code:React・Vue・CSSフレームワーク対応まとめブログ

Figma to Code:React・Vue・CSSフレームワーク対応まとめ

MarkupGenはFigmaのデザインをReactやVue 3コンポーネント(Svelte・Angularにも対応)、またはTailwindやBootstrapなどのHTML/CSSに変換できます。

続きを読む
公開前にAI生成HTMLを評価する方法ブログ

公開前にAI生成HTMLを評価する方法

「見た目が正しい」を超えて、AIによるFigma-to-code出力を判断するための再現可能なチェックリスト——視覚的な忠実度、セマンティクス、レスポンシブ性、アクセシビリティ、そして重量。

続きを読む
Figma-to-HTML出力はSEOに対応しているか:確認すべきポイントブログ

Figma-to-HTML出力はSEOに対応しているか:確認すべきポイント

変換されたHTMLは、デザインと見た目が同一でもSEOを損なうことがある。Figma-to-codeのエクスポートを公開する前に確認すべきチェックリスト。

続きを読む
Figmaからアクセシブルなhtmlへ:実践ガイドブログ

Figmaからアクセシブルなhtmlへ:実践ガイド

Figma→HTMLのワークフローでアクセシビリティに実際に必要なこと——セマンティックマークアップ、見出し、ARIA、フォーム、コントラスト、キーボード操作について解説します。

続きを読む
FigmaからCSSへ:実践的な変換ガイドブログ

FigmaからCSSへ:実践的な変換ガイド

フレームワークへの依存を完全になくす。Figmaの値がそのまま編集可能なプレーンCSSに変換される仕組みと、TailwindやBootstrapより適切な場面を解説。

続きを読む
比較

MarkupGen vs. TeleportHQ:コンバーター vs. ローコードプラットフォーム

TeleportHQはFigma-to-codeのエクスポートに組み込みのCMS、フォーム、ホスティングを組み合わせています。一方MarkupGenはクリーンでスタンドアロンなHTML/CSS/React出力に専念しています。

続きを読む
フロントエンド開発者のためのMarkupGen活用事例

フロントエンド開発者のためのMarkupGen

手作業でのコーディングはもう不要。Figmaのフレームをそのままクリーンなコードに変換し、レイアウトではなくロジックに時間を使いましょう。

続きを読む

次のFigmaデザインを数分でコードに変換しましょう

無料で始めて、どんなFigmaファイルからでもきれいなHTML、CSS、Reactを書き出せます。

無料で変換する
MarkupGenMarkupGen© 2025 MarkupGen. 無断転載を禁じます。
ブログ活用事例比較リソース
会社概要ドキュメントプライバシー利用規約お問い合わせ