CSS Container Query Builder

container-type、コンテナ名、サイズ条件を使ってCSSコンテナクエリをビジュアルに作成。すべての処理はクライアントサイドで実行されます。

このツールについて

CSS Container Query Builderは、container-typecontainer-name@containerルールの構文を記憶することなくCSSコンテナ クエリを構築できる無料のブラウザベースツールです。 仕様を参照する代わりに、ドロップダウンからオプションを 選択し値を入力するだけで、すぐに使えるCSSが即座に生成 されます。

コンテナクエリを使うと、コンポーネントはビューポートではなく 最も近い包含コンテキストのサイズに応じて反応できます。 これによりコンポーネントが真に再利用可能になります。 カードコンポーネントは、画面幅に関係なく、親要素が 提供するスペースに応じてスタックレイアウトから横並び レイアウトに切り替えることができます。

ビルダーは3つのコンテナタイプをサポートします:inline-size (幅のみ追跡、最も一般的)、size(幅と高さの両方を追跡)、 normal(包含なし、オプトアウト用)。コンテナに名前を付けて 特定の祖先をターゲットし、複数のサイズ条件(min-widthmax-widthmin-heightmax-heightorientationなど)を andで組み合わせたり、orで個別の@containerルールに 分けたりできます。

すべての処理はブラウザ内で完全に実行されます。データは サーバーに一切送信されず、アカウントも不要です。

このツールは、従来のビューポートベースのレスポンシブデザインのための CSS @media Query Builder、 グリッドやフレックスボックスレイアウトを構築するための CSS Layout Generator、 Tailwind CSS v3.2+でコンテナクエリブレークポイントを設定するための Tailwind Config Builderと 組み合わせて使えます。

使い方

  1. ドロップダウンからContainer Typeを選択します:inline-size(幅のみ)、size(幅+高さ)、normal(包含なし)。
  2. Container Nameを入力します(例:cardsidebar)。空のままにすると名前なしのコンテナクエリになります。
  3. Add Conditionをクリックして、min-width: 400pxmax-width: 800pxなどのサイズ条件を追加します。
  4. 必要に応じて条件を追加します。各条件の横のチェックボックスで有効/無効を切り替えられます。
  5. 条件をand(すべて一致)またはor(個別の@containerルール)で組み合わせるかを選択します。
  6. 右側(モバイルでは下部)の出力パネルで生成されたCSSを確認します。
  7. CopyをクリックまたはCtrl+Shift+Cを押してクリップボードにコピーします。またはCommon Presetをクリックして人気のパターンを即座に読み込みます。

人気のコンテナクエリガイド

すべてのコンテナクエリガイドを見る →

よくある質問

データは安全ですか?

はい。すべての処理はJavaScriptを使用してブラウザ内で完全に実行されます。データはサーバーに一切送信されません。コンテナクエリCSSはローカルで生成され、どこにも送信されません。

コンテナクエリとメディアクエリの違いは何ですか?

メディアクエリはビューポート(ブラウザウィンドウ)のサイズに応答します。コンテナクエリは特定の親要素のサイズに応答します。これにより、異なるレイアウトコンテキストに表示される可能性のある再利用可能なコンポーネントに理想的です。

container-type: inline-sizeは何をしますか?

container-type: inline-sizeを設定すると、要素にインラインサイズの包含が確立され、その子要素が幅に基づく@containerクエリを使用できます。ほとんどのレスポンシブレイアウトは利用可能な幅に基づいて適応するため、最も一般的に使用されるコンテナタイプです。

container-type: sizeをいつ使うべきですか?

コンテナの幅と高さの両方をクエリする必要がある場合にcontainer-type: sizeを使用します。これはあまり一般的ではなく、ブラウザがコンテンツに依存せずに要素のサイズを決定できる必要があるため、より慎重なレイアウト管理が必要です。

コンテナに名前を付ける必要がありますか?

いいえ。container-nameを省略すると、@containerクエリは包含を持つ最も近い祖先にマッチします。名前付きコンテナは、ネストされたコンテナがあり、特定のコンテナをターゲットしたい場合に便利です。

どのブラウザがCSSコンテナクエリをサポートしていますか?

CSSコンテナクエリはすべてのモダンブラウザでサポートされています:Chrome 105+、Firefox 110+、Safari 16+、Edge 105+。2024年時点でほとんどのユーザー向けに本番環境で安全に使用できます。

コンテナクエリとメディアクエリを組み合わせて使えますか?

はい。コンテナクエリとメディアクエリは異なる目的を果たし、一緒に使用できます。例えば、ページ全体のレイアウトにメディアクエリを使用し、個々のコンポーネントのレスポンシブ性にコンテナクエリを使用できます。

関連ツール