Day 2・CSSの考え方 — 見た目を整える
ボックスモデル — すべての要素は箱
画面上の要素はすべて四角い箱。margin/border/paddingで、箱の余白と枠を調整する。
見えないけど、すべては箱でできている
Webページを見ると、文字も画像もボタンもバラバラの形に見えます。でも裏側では、はすべてのを「四角い箱」として扱っています。丸いボタンでさえ、実は四角い箱の角を丸めているだけです。この考え方をと呼びます。
たとえるなら
引っ越しのダンボールを想像してください。中身(文字や画像)があり、そのまわりに緩衝材(内側の余白)、箱の壁(枠線)、そして箱と箱のあいだの隙間(外側の余白)があります。要素も同じ構造です。
箱の四つの層
一つの箱は、内側から外側へ向かって次の四つでできています。
- content(中身) … 文字や画像そのもの。ダンボールの中の荷物
- padding(内側の余白) … 中身と枠線のあいだの隙間。荷物を守る緩衝材
- border(枠線) … 箱の壁。太さ・色・線の種類を決められる
- margin(外側の余白) … 箱と、隣の箱とのあいだの隙間
なぜpaddingとmarginを分けるの?
paddingは「箱の内側を広げる(中身にゆとりを持たせる)」、marginは「箱の外側に隙間を作る(隣と離す)」で役割が違うからです。ボタンの中の文字が窮屈ならpadding、ボタン同士がくっついているならmargin、と切り分けて考えられます。
.card {
padding: 16px;
border: 1px solid gray;
margin: 24px;
}この border の書き方は「太さ・線の種類・色」を空白区切りで並べたものです。1px solid gray は「1pxの実線で灰色」という意味。AIが生成したCSSでよく出てくる形なので、順番の意味を知っておくと読めます。
余白トラブルはまずボックスを疑う
「なんか隙間が広すぎる」「ボタンが窮屈」といった見た目の不満は、たいてい padding か margin の数値が原因です。AI生成CSSを直すときも、まずこの二つを探すのが近道です。
窮屈なボタン
内側の余白がゼロで、文字が枠にぴったりくっついて読みにくい
.btn {
padding: 0;
}ゆとりのあるボタン
上下12px・左右20pxのゆとりができ、押しやすく見える
.btn {
padding: 12px 20px;
}AIにはこう頼む
余白を直したいときは「このボタンの内側の余白(padding)をもう少し広げて」「カード同士の間隔(margin)を詰めて」と、paddingかmarginかを名指しで頼むと、AIが的確に直してくれます。
読んでも腑に落ちない所は、AIに噛み砕いてもらいましょう。
理解度チェック
答えられれば、面接で説明できる状態に一歩近づきます。
ボタンの「中の文字」が枠にくっついて窮屈です。広げるべきなのはどれ?
二つのカードがくっついて見えます。あいだに隙間を作るには?
ボックスモデルの padding と margin の違いを、たとえを使って説明してください。
記述式です。まず自分の言葉で答えを考えてから、模範解答を開いて自己採点してください。