本文へスキップ
FluidClamp
言語: 日本語

padding・margin・gap のためのフルードスペーシング計算ツール

余白も文字と同じくらいフルード化の恩恵を受けます。スマートフォンとデスクトップで必要な余白を指定すれば、padding、margin、gap に使える clamp() の値が得られます。

入力単位
出力単位

よく使うプリセット

clamp() の値

clamp(1.5rem, 0.6667rem + 4.1667vw, 4rem)

傾き: 4.1667vw · 切片: 0.6667rem

CSS
clamp(1.5rem, 0.6667rem + 4.1667vw, 4rem)
CSS カスタムプロパティ
--fluid-space: clamp(1.5rem, 0.6667rem + 4.1667vw, 4rem);
Tailwind クラス
p-[clamp(1.5rem,0.6667rem_+_4.1667vw,4rem)]

最大値が最小値の 2.67 倍です(2.5 倍超)。ここまで大きく変化する文字は、ズーム時に 200% まで拡大されない可能性があります。WCAG 1.4.4「テキストのサイズ変更」を確認してください。

ビューポート別の表示サイズ
ビューポートサイズ (px)サイズ (rem)
320px241.5
375px26.291.6432
768px42.672.6667
1024px53.333.3333
1280px644
1440px644
1920px644

設定は URL に保存されるので、この結果をそのままブックマークしたり共有したりできます。

ライブプレビュー

ビューポート 1024px で 53.33px

フルードな padding と gap

余白をフルードにする理由

たっぷりとした余白はデスクトップのレイアウトに落ち着きを与えますが、同じ 96px のセクション padding はスマートフォンの画面の 3 分の 1 を無駄にします。固定のブレークポイントでは段階的にしか調整できず、タブレットでは余白が詰まりすぎたり空きすぎたりしがちです。フルードな値は連続的に変化するので、どの画面にも幅に応じた余白が割り当てられ、宣言も 3 つではなく 1 つで済みます。

フルードな文字と同じ計算式

余白にもフォントサイズとまったく同じ一次式を使います。最小値、最大値、そして 2 つのビューポート幅を結ぶ直線です。違うのは選ぶ数値だけです。余白は可読性を保つ必要がないため、文字よりも大きな倍率で増やすことがよくあります。セクションの padding を 24px から 64px にするのは一般的です。WCAG の 2.5 倍のズーム警告は余白には当てはまりませんが、値を文字に流用する場合に備えて注意として表示されます。

スペーシングスケールを作る

一貫したシステムにするには、--space-s、--space-m、--space-l のようなフルードな余白トークンをいくつか定義し、それぞれに最小値と最大値を設定します。小さいものはコンポーネント内の隙間に、中くらいのものはカードの padding に、大きいものはページのセクション間に使います。同じビューポート範囲のフルードなタイプスケールと組み合わせれば、文字と余白が足並みをそろえて大きくなります。

Tailwind では、p-[clamp(…)]、gap-[clamp(…)]、my-[clamp(…)] のような任意値として適用します。ツールはスペースの代わりにアンダースコアを使ったクラスをそのまま出力します。これが、Tailwind が任意値の中のスペースを表す書き方です。

ヒント

余白も rem で指定し、文字と一緒にユーザーのフォント設定を尊重しましょう。枠線や細い罫線にはフルードな値を使わないでください。小数点以下のピクセルでにじむことがあります。320px でプレビューを確認し、padding がコンテンツの領域を圧迫していないか確かめましょう。

よくある質問

clamp() は padding や margin にも使えますか?

使えます。clamp() は padding、margin、gap、width、border-radius、inset など、あらゆる CSS の長さに使えます。

余白は rem と px のどちらで指定すべきですか?

通常は rem がおすすめです。ユーザーが既定のフォントサイズを大きくすると余白も大きくなり、文字と余白の比率が保たれます。

WCAG の 2.5 倍の警告は余白にも関係しますか?

関係ありません。この目安は文字のサイズ変更に関するものです。小さな画面でコンテンツが収まる限り、余白はもっと大きく増やしても問題ありません。

Tailwind ではどう使えばよいですか?

Tailwind クラスをコピーし、必要に応じて p-、px-、gap-、space-y- などに接頭辞を変えてください。角かっこ内の値はそのままです。