🏠 Home / Hub

🎨 CSS Lesson 02 — Box Model

← Back to CSS Menu  |  🏠 Hub

1. Box Model — CSS ရဲ့ အဓိက Concept

HTML element တိုင်းမှာ box 4 ထပ် ပတ်နေတယ် — Content → Padding → Border → Margin

┌─────────────────────────────┐  ← MARGIN (transparent, outside space)
│  ┌───────────────────────┐  │  ← BORDER (visible edge)
│  │  ┌─────────────────┐  │  │  ← PADDING (inside space, bg color)
│  │  │    CONTENT      │  │  │  ← actual text/image
│  │  └─────────────────┘  │  │
│  └───────────────────────┘  │
└─────────────────────────────┘
MARGIN (orange)
BORDER (green)
PADDING (blue)
CONTENT

2. Margin — Outside Space

margin: 20px;                  /* all 4 sides */
margin: 10px 20px;             /* top/bottom  left/right */
margin: 10px 20px 30px 40px;   /* top right bottom left (clock) */
margin-top: 10px;
margin: 0 auto;                /* center horizontally ✅ */
margin: 0
margin: 20px (orange area is margin)
margin: 0 auto (centered)

3. Padding — Inside Space

padding: 20px;
padding: 10px 24px;          /* vertical horizontal */
padding-top / padding-left / padding-right / padding-bottom

/* Margin နဲ့ ကွာချက် */
margin  → element ပြင်ပ space (transparent)
padding → element အတွင်း space (background color ပါ)
padding: 4px
tight
padding: 16px
comfortable
padding: 32px
spacious

padding: 8px 32px 16px 8px
(top=8 right=32 bottom=16 left=8)

4. Border

border: 2px solid #333;         /* width style color */
border: 1px dashed red;
border: 4px dotted blue;

border-radius: 8px;             /* rounded corners */
border-radius: 50%;             /* circle! */

border-top: 3px solid #42b883;  /* one side only */
solid 2px
dashed
dotted
radius: 8px
circle
top only

5. box-sizing — အရေးကြီးဆုံး Property!

/* content-box (default) — width က content ကိုပဲ ဆိုတာ */
width: 200px + padding: 20px + border: 5px
→ actual size = 200 + 40 + 10 = 250px ❌ unexpected

/* border-box — width က border အထိ ဆိုတာ */
box-sizing: border-box;
width: 200px + padding: 20px + border: 5px
→ actual size = exactly 200px ✅ predictable

/* Best practice — global reset */
* { box-sizing: border-box; }

width: 200px, padding: 20px, border: 5px solid

❌ content-box
Actual width: 250px!
✅ border-box
Actual width: 200px

6. Width, Height, Max, Min

width: 300px;          /* fixed */
width: 50%;            /* parent ရဲ့ 50% */
width: 100%;           /* parent နဲ့ တူ */
max-width: 800px;      /* ဒီထက် မကြီးဘဲ responsive */
min-width: 200px;      /* ဒီထက် မသေးဘဲ */
height: auto;          /* content အပေါ် မူတည် (default) */
width: 100% (full)
width: 75%
width: 50%
width: 200px (fixed)
max-width: 300px (responsive)

7. Overflow

overflow: visible;  /* default — content ထွက်သွား */
overflow: hidden;   /* ဖြတ်ထား */
overflow: scroll;   /* scroll bar အမြဲ */
overflow: auto;     /* လိုတဲ့အချိန်မှ scroll bar */
overflow-x / overflow-y  /* axis specific */

visible (default)

Content က box ပြင်ထွက်သွားနိုင်တယ် — ဒါ default behavior

hidden

Content က box ပြင်ထွက်ရင် ဖြတ်ထားတယ် — overflow content မမြင်ရဘူး

auto (scroll)

Content က box ပြင်ထွက်ရင် scroll bar ပေါ်လာတယ် — auto ဆိုတာ လိုတဲ့အချိန်မှ scroll bar ပြတယ်

8. Interactive Box Model Playground

CONTENT

← CSS 01  |  Next: CSS Lesson 03 → Typography

📌 Study Checklist