✏️ 2024. 11μ›” 28일 / CSS μ–Έμ–΄, μ½”λ”© 기초 2

✨ CSS μ–Έμ–΄ 기초 - css box model
βœ–οΈ

block 속성을 κ°€μ§„ νƒœκ·Έλ“€μ€ 넓이와 높이λ₯Ό κ°€μ§ˆ 수 μžˆμŠ΅λ‹ˆλ‹€.
μ΄λ ‡κ²Œ λ°•μŠ€μ˜ 넓이와 높이가 생겼을 λ•Œ 컨텐츠λ₯Ό λ°°μΉ˜ν•˜κ³  λ ˆμ΄μ•„μ›ƒμ„ μ„€μ •ν• λ•Œ css box model을 μ‚¬μš©ν•©λ‹ˆλ‹€.
css box modelμ—μ„œλŠ” 컨텐츠λ₯Ό μ—¬μœ λ‘­κ²Œ λ³΄μ—¬μ£ΌλŠ” padding μ˜μ—­κ³Ό
border(ν…Œλ‘λ¦¬)영영과 컨텐츠와 컨텐츠 사이에 여백을 λ„£μ–΄μ£ΌλŠ” marginμ˜μ—­μ΄ μžˆμŠ΅λ‹ˆλ‹€.

☁️ padding : μ•ˆμͺ½ μ—¬λ°±
βœ–οΈ
μ»¨ν…μΈ μ˜ λ°”κΉ₯뢀뢄에 μƒκΈ°λŠ” μ—¬λ°±μœΌλ‘œ λ°•μŠ€μ˜ μ•ˆμͺ½μœΌλ‘œ 빈 곡간을 λ„£μ–΄ 컨텐츠λ₯Όμ—¬μœ λ‘­κ²Œ λ³΄μ—¬μ£ΌλŠ” 역할을 ν•œλ‹€.
padding에 값을 1개만 적을 경우 λ°•μŠ€μ˜ μƒν•˜μ’Œμš°μ— λ™μΌν•œ px만큼 여백이 μ„€μ •λœλ‹€.
πŸ‘»[κΈ°λ³Έν˜•]
padding-left : μ™Όμͺ½μ—λ§Œ μ§€μ •λœ κ°’λ§ŒνΌ μ•ˆμͺ½ 여백을 μ μš©ν•©λ‹ˆλ‹€.
padding-right : 였λ₯Έμͺ½μ—λ§Œ μ§€μ •λœ κ°’λ§ŒνΌ μ•ˆμͺ½ 여백을 μ μš©ν•©λ‹ˆλ‹€.
padding-top : μœ„μͺ½μ—λ§Œ μ§€μ •λœ κ°’λ§ŒνΌ μ•ˆμͺ½ 여백을 μ μš©ν•©λ‹ˆλ‹€.
padding-bottom : μ•„λž˜μͺ½μ—λ§Œ μ§€μ •λœ κ°’λ§ŒνΌ μ•ˆμͺ½ 여백을 μ μš©ν•œλ‹€.
λ§Œμ•½ μƒν•˜μ’Œμš°μ— 값을 각각 ν•œ λ²ˆμ— μ μš©ν•˜κ³  μ‹Άλ‹€λ©΄ μ•„λž˜μ™€ 같이 μ”λ‹ˆλ‹€.
값을 ν•œ λ²ˆμ— 4개λ₯Ό μ¨μ„œ μ„ μ–Έν• λ•Œμ—λŠ” 곡백으둜 κ΅¬λΆ„ν•˜κ³  κ°’1(top의 자리)λΆ€ν„° μ‹œμž‘ν•˜μ—¬ μ‹œκ³„ λ°©ν–₯으둜 μ μš©λ©λ‹ˆλ‹€.
값을 ν•œ λ²ˆμ— 2개λ₯Ό μ¨μ„œ μ„ μ–Έν• λ•Œμ—λ„ 곡백으둜 κ΅¬λΆ„ν•˜κ³  κ°’1은 μƒν•˜, κ°’2λŠ” 쒌우의 μžλ¦¬κ°€ λ©λ‹ˆλ‹€.
πŸ‘»[κΈ°λ³Έν˜•]
padding : κ°’1 κ°’2 κ°’3 κ°’4;
=> top right bottom left;
padding : κ°’1 κ°’2;
=> top/bottom left/right;


☁️ λ°•μŠ€μ˜ λ‹¨μœ„
βœ–οΈ
넓이 λ˜λŠ” 높이λ₯Ό μ μš©ν•  λ•Œ 기본적으둜 pxλ‹¨μœ„λ₯Ό μ΄μš©ν•˜μ§€λ§Œ %λ₯Ό μ΄μš©ν•˜κΈ°λ„ ν•©λ‹ˆλ‹€.
- px : κ³ μ •λ‹¨μœ„ / λΈŒλΌμš°μ €μ˜ λ„“μ΄λ‚˜ 높이가 달라지더라도 늘 κ³ μ •λœ μ‚¬μ΄μ¦ˆλ₯Ό λ³΄μ—¬μ€λ‹ˆλ‹€.
- % : μƒλŒ€λ‹¨μœ„ / λΈŒλΌμš°μ €μ˜ λ„“μ΄λ‚˜ 높이 λ˜λŠ” λΆ€λͺ¨λ°•μŠ€ 크기가 달라지면 μ•ˆμ— μžˆλŠ” λ°•μŠ€λ„ 같이 μ€„μ–΄λ“€κ±°λ‚˜ λŠ˜μ–΄λ‚©λ‹ˆλ‹€.
- auto : λ°•μŠ€ ν˜•νƒœμ˜ 넓이와 높이 값을 컨텐츠 양에 따라 μžλ™μœΌλ‘œ κ²°μ •λ˜λ©° κΈ°λ³Έκ°’μž…λ‹ˆλ‹€.

☁️ ν…Œλ‘λ¦¬ 속성
βœ–οΈ
ν…Œλ‘λ¦¬μ— κ΄€λ ¨λœ 속성은 block 속성을 κ°€μ§„ λͺ¨λ“  νƒœκ·Έμ— μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
ν…Œλ‘λ¦¬ 속성은 ν…Œλ‘λ¦¬ λ‘κ»˜(border-width),ν…Œλ‘λ¦¬ μŠ€νƒ€μΌ(border-style),ν…Œλ‘λ¦¬ 색상(border-color)을 ν…Œλ‘λ¦¬ 속성이라고 ν•˜λ©°
이쀑 ν•˜λ‚˜λΌλ„ μ—†μœΌλ©΄ λΈŒλΌμš°μ €μ— ν…Œλ‘λ¦¬κ°€ λ‚˜νƒ€λ‚˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
ν…Œλ‘λ¦¬ μŠ€νƒ€μΌ
1. none β˜… : ν…Œλ‘λ¦¬κ°€ λ‚˜νƒ€λ‚˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. κΈ°λ³Έκ°’.
2. hidden : ν…Œλ‘λ¦¬λ₯Ό λ‚˜νƒ€λ‚΄μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.boder-collapseκ°€ collapse둜 μ„€μ •λ˜μ–΄ μžˆμ„ 경우
λ‹€λ₯Έ ν…Œλ‘λ¦¬λ„ ν‘œμ‹œν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
3. dashed β–³ : ν…Œλ‘λ¦¬λ₯Ό 직선 ν˜•νƒœμ˜ μ μ„ μœΌλ‘œ ν‘œμ‹œν•©λ‹ˆλ‹€.
4. dotted β–³ : ν…Œλ‘λ¦¬λ₯Ό λ„νŠΈ ν˜•νƒœμ˜ μ μ„ μœΌλ‘œ ν‘œμ‹œν•©λ‹ˆλ‹€.
5. double : 이쀑 μ‹€μ„ μœΌλ‘œ ν…Œλ‘λ¦¬λ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€.
6. groove : ν…Œλ‘λ¦¬λ₯Ό μž…μ²΄μ μœΌλ‘œ λ³΄μ—¬μ€λ‹ˆλ‹€. (μž…μ²΄)
7. inset : ν…Œλ‘λ¦¬λ₯Ό μ•ˆμͺ½μœΌλ‘œ λ“€μ–΄κ°„ μ•‘μžμ²˜λŸΌ λ³΄μ—¬μ€λ‹ˆλ‹€. (μž…μ²΄)
8. outset : inset의 λ°˜λŒ€ λͺ¨μ–‘μœΌλ‘œ λ‚˜νƒ€λƒ…λ‹ˆλ‹€. (μž…μ²΄)
9. ridge : ν…Œλ‘λ¦¬λ₯Ό μ°½μ—μ„œ νŠ€μ–΄λ‚˜μ˜€λŠ” κ²ƒμ²˜λŸΌ λ³΄μ—¬μ€λ‹ˆλ‹€. groove의 λ°˜λŒ€λͺ¨μ–‘. (μž…μ²΄)
10. solid β˜… : ν…Œλ‘λ¦¬λ₯Ό μ‹€μ„ μœΌλ‘œ λ‚˜νƒ€λƒ…λ‹ˆλ‹€.
πŸ‘»[κΈ°λ³Έν˜•]
1. border : λ‘κ»˜ μŠ€νƒ€μΌ 색상;
-> λ°•μŠ€ 사방에 λ™μΌν•œ ν…Œλ‘λ¦¬λ₯Ό μ μš©ν•©λ‹ˆλ‹€.
2. border-top : λ‘κ»˜ μŠ€νƒ€μΌ 색상;
-> λ°•μŠ€μ˜ μœ„μͺ½μ— ν…Œλ‘λ¦¬λ₯Ό μ μš©ν•©λ‹ˆλ‹€.
3. border-bottom : λ‘κ»˜ μŠ€νƒ€μΌ 색상;
-> λ°•μŠ€μ˜ μ•„λž˜μͺ½μ— ν…Œλ‘λ¦¬λ₯Ό μ μš©ν•©λ‹ˆλ‹€.
4. border-right : λ‘κ»˜ μŠ€νƒ€μΌ 색상;
-> λ°•μŠ€μ˜ 였λ₯Έμͺ½μ— ν…Œλ‘λ¦¬λ₯Ό μ μš©ν•©λ‹ˆλ‹€.
5. border-left : λ‘κ»˜ μŠ€νƒ€μΌ 색상;
-> λ°•μŠ€μ˜ μ™Όμͺ½μ— ν…Œλ‘λ¦¬λ₯Ό μ μš©ν•©λ‹ˆλ‹€.


☁️ border-radius : λ°•μŠ€λ₯Ό λ‘₯κΈ€κ²Œ λ§Œλ“œλŠ” 속성
βœ–οΈ
UIμš”μ†Œλ₯Ό λ””μžμΈ ν•  λ•Œ λ°•μŠ€μ˜ λͺ¨μ„œλ¦¬λ₯Ό λ‘₯κΈ€κ²Œ λ””μžμΈ ν•˜λŠ” κ²½μš°κ°€ μžˆμŠ΅λ‹ˆλ‹€
μ΄λ•Œ border-radius속성을 μ΄μš©ν•˜λ©΄ λ°•μŠ€λ₯Ό λ‘₯κΈ€κ²Œ λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆλ‹€.
πŸ‘»[κΈ°λ³Έν˜•]
border-radius : 숫자px λ˜λŠ” %;
border-radiusλ₯Ό 각 λͺ¨μ„œλ¦¬λ§ˆλ‹€ λ‹€λ₯Έ 값을 μ£Όκ³  싢을 λ•Œ 값을 4개둜 λ‚˜λˆ  μ μš©ν•©λ‹ˆλ‹€.
β›„
첫번째 값은 μ™Όμͺ½ 상단 λͺ¨μ„œλ¦¬(top-left)λ₯Ό μ‹œμž‘μœΌλ‘œ μ‹œκ³„λ°©ν–₯으둜 μ μš©λ©λ‹ˆλ‹€.
πŸ‘»[κΈ°λ³Έν˜•]
border-radius : κ°’1 κ°’2 κ°’3 κ°’4;
β›„
border-radius의 값을 λ‘κ°œλ‘œ λ‚˜λˆ  적을 경우 μ•žμ— μžˆλŠ” μžλ¦¬λŠ” μ™Όμͺ½ 상단-였λ₯Έμͺ½ ν•˜λ‹¨μ˜ 자리이고
λ‘λ²ˆμ§Έ μžλ¦¬λŠ” 였λ₯Έμͺ½ 상단 - μ™Όμͺ½ ν•˜λ‹¨μ˜ 자리둜, λŒ€κ°μ„ μœΌλ‘œ λ‘₯κΈ€κΈ°κ°€ μ μš©λ©λ‹ˆλ‹€.
πŸ‘»[κΈ°λ³Έν˜•]
border-radius : κ°’1 κ°’2;


πŸ—¨οΈ μ†μœΌλ‘œ 직접 κ³΅λΆ€ν•œ λ‚΄μš©μ„ λ°”νƒ•μœΌλ‘œ μž‘μ„±ν•œ κΈ€μ΄λžλ‹ˆλ‹€ !
βœ–οΈ
μ•žμœΌλ‘œλ„ μ—΄μ‹¬νžˆ κ³΅λΆ€ν•΄μ„œ λ§Žμ€ λ‚΄μš©μ„ κ³΅μœ ν•˜κ² μŠ΅λ‹ˆλ‹€ :)

profile
🎧 α΄˜ΚŸα΄€ΚΙͺΙ΄Ι’: UXUI (Feat: coding) ─────────βšͺ───── 𝟸:𝟷𝟾 / 𝟹:πŸ»πŸΌβ € γ…€ ◄◄⠀▐▐⠀►► ───○ πŸ”Š

0개의 λŒ“κΈ€