CSS辞書

box-sizing

スペーシング・サイズ

要素のサイズ計算方法を指定するプロパティです。content-box(デフォルト)ではpaddingとborderが幅に含まれませんが、border-boxではそれらを含めた幅になります。モダンCSS開発ではborder-boxが必須です。

構文

Syntax
box-sizing: content-box | border-box

Tailwindでは

box-borderbox-sizing: border-box
box-contentbox-sizing: content-box

Preflight(リセットCSS)が全要素をborder-boxにするため、通常は書かない。

コード例

1

* { box-sizing: border-box; }
実行結果
border-box (200px総幅)
content-box (244px総幅)

全要素でborder-boxを適用(推奨設定)

2

.container { width: 300px; padding: 20px; border: 2px solid #ccc; box-sizing: border-box; }
実行結果
幅300pxにpadding・borderを含める

幅300pxにpadding・borderを含める

💡 TIPS

border-boxは直感的なサイズ計算。CSSリセットで全体に適用するのが一般的。

⚠️ よくある間違い

content-box(デフォルト)では、paddingとborderが幅に追加される。

🤖 AIがよく間違えるポイント

AIは「*, *::before, *::after { box-sizing: border-box }のリセットが既に入っている」前提で幅計算のコードを書くことがあります。プロジェクトにリセットがあるか確認してから使うこと。またborder-boxでもmarginは含まれない(含むのはpaddingとborder)点の誤解が混じることがあります。

💬 AIへの頼み方

このプロジェクトにbox-sizingのリセットが入っているか確認し、なければ現代的なCSSリセットを提案して

そのままAIチャットに貼り付けて使える依頼文の例です。ページ上部の「AI用にコピー」でこのページ全体をコンテキストとして渡せます。

関連プロパティ

ブラウザサポート

Baseline 広く利用可能
Chrome
10+
Firefox
29+
Safari
5.1+
Edge
12+