CSS- float(โญโญโญ)

Taehee Kimยท2022๋…„ 4์›” 12์ผ
0

CSS

๋ชฉ๋ก ๋ณด๊ธฐ
8/15

๐Ÿ“Œfloat์˜ ์—ญํ• 

์ด๋ฏธ์ง€๋ฅผ ํ•œ ์ค„๋กœ ์„ค์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•

1) display: inline-block
- ๋ฌธ์ œ์ : ์ด๋ฏธ์ง€๋“ค ์‚ฌ์ด๊ฐ€ ๊ธฐ๋ณธ์ ์œผ๋กœ ํ‹ˆ์ด ์ƒ๊น€(์ฝ”๋”ฉํ•  ๋•Œ ํƒœ๊ทธ๋งˆ๋‹ค ์—”ํ„ฐ๋ฅผ ์“ฐ๊ธฐ ๋•Œ๋ฌธ์ž„)
- float: left ๋˜๋Š” right๋กœ ํ•ด๊ฒฐ

2) float: left/right
- inline-block์š”์†Œ์ฒ˜๋Ÿผ ๋ฐ”๋€Œ๊ฒŒ ํ•จ(์ฝ˜ํ…์ธ ๋งŒํผ์˜ ๊ธธ์ด๋กœ ๋ณ€ํ•จ)
- ๋‹ค๋ฅธ normal-position ์š”์†Œ๋ฅผ ๋ฐ€์–ด๋‚ด์ง„ ์•Š์ง€๋งŒ ๊ฒน์นจ ํ˜„์ƒ์ด ์ผ์–ด๋‚จ
- ๊ฐ€์ƒ ์š”์†Œ๋Š” inline ์š”์†Œ๋ผ์„œ float ์„ค์ •์„ ํ•ด์ค˜์•ผ ๋„ˆ๋น„ ๋ฐ ๋†’์ด ์„ค์ •์ด ๊ฐ€๋Šฅํ•จ
๋ณดํ†ต inline ์š”์†Œ๋Š” vertical-align: center๋กœ ๊ฐ€์šด๋ฐ ์ •๋ ฌ์ด ๊ฐ€๋Šฅํ•˜๊ณ , float๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด inlin-block์ด๊ธฐ ๋•Œ๋ฌธ์— margin์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ
float๋Š” ํ…์ŠคํŠธ๋ฅผ ๊ฐ€์šด๋ฐ ์ •๋ ฌ์„ ๊ธฐ๋ณธ์ ์œผ๋กœ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— vertical-align์„ ์“ธ ํ•„์š”๊ฐ€ ์—†์Œ


๐Ÿ“Œfloat์˜ ๋ฌธ์ œ์ 

1) ๋ถ€๋ชจํƒœ๊ทธ ์•ˆ์˜ ์ž์‹ ์š”์†Œ์— '๋ชจ๋‘' float ์„ค์ •์„ ํ•˜๋ฉด, ๋ถ€๋ชจ ํƒœ๊ทธ์— ๋ฒ—์–ด๋‚˜๋Š” ๋ฌธ์ œ๊ฐ€ ์ƒ๊น€

2) ํ•˜๋‚˜์˜ ์ž์‹ ์š”์†Œ๋งŒ float๋ฅผ ์„ค์ •ํ•˜๋ฉด, ์„ค์ •ํ•˜์ง€ ์•Š์€ ํ˜•์ œ ์š”์†Œ๊ฐ€ ์„ค์ •๋œ ํ˜•์ œ์˜ ์˜์—ญ์„ ์นจ๋ฒ”ํ•˜๊ฒŒ ๋จ. (๋ธŒ๋ผ์šฐ์ € ์†Œ์Šค์—์„œ ํ™•์ธ ๊ฐ€๋Šฅ)


๐Ÿ“Œfloat์˜ ๋ฌธ์ œ์  ์›์ธ

float ๋˜๋Š” position ์†์„ฑ์€ normal flow๋ฅผ ๋ฒ—์–ด๋‚˜๊ธฐ ๋–„๋ฌธ์ž„



๐Ÿ“Œfloat ๋ฌธ์ œ ํ•ด๊ฒฐ์ฑ…

1) ๋ถ€๋ชจ ์š”์†Œ์— overflow ์†์„ฑ ์ถ”๊ฐ€

- hidden, scroll, visible ๋ชจ๋‘ ๊ฐ€๋Šฅ
- hidden์„ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ, ํŽธ๋ฆฌ(์‹ค๋ฌด์—์„œ๋„)
- ๋ฐœ์ƒ ๊ฐ€๋Šฅ ๋ฌธ์ œ: ์ž์‹์ด ๋ถ€๋ชจ๋ณด๋‹ค ์ปค์ง€๋ฉด ์ž˜๋ฆฌ๊ฑฐ๋‚˜, ์Šคํฌ๋กค ๋“ฑ์ด ์ƒ๊ธธ ์ˆ˜ ์žˆ์Œ

2) clear ์†์„ฑ ํ™œ์šฉ

- float ์ ์šฉ๋œ ๋ฐ”๋กœ ๋‹ค์Œ ํ˜•์ œ ์š”์†Œ์— clear: both/ left/ right ์‚ฌ์šฉ
- ํŽธ๋ฆฌ๋ฅผ ์œ„ํ•ด ์ฃผ๋กœ clear:both ์‚ฌ์šฉ
- float ์†์„ฑ์„ ํ•ด์ œํ•˜๋ฉด์„œ ๋ถ€๋ชจ์—๊ฒŒ ์œ„์น˜๋ฅผ ์•Œ๋ ค์ฃผ๋Š” ์—ญํ• 

3) clear-fix(๊ฐ€์ƒ ์š”์†Œ)

- ๋ถ€๋ชจ์š”์†Œ::after/ before๋ฅผ ๋„ฃ์–ด ๋ง‰๋‘ฅ์ด ์ž์‹์„ ๋„ฃ์–ด์คŒ
- ๋ง‰๋‚ด๋ฅผ ํ†ตํ•ด ์•ž์˜ ํ˜•์ œ๋“ค์˜ ์œ„์น˜๋ฅผ ๋ถ€๋ชจ์—๊ฒŒ ์•Œ๋ ค์คŒ
- ๊ฐ€์ƒ์š”์†Œ๋Š” ๊ผญ ๋‹ซํžŒ ํƒœ๊ทธ์—์„œ๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅ (ex-input, img ํƒœ๊ทธ XXX)

.wrap::after {
	content:'';
	display:block;
	clear:both;
}

5) ๋ถ€๋ชจ์š”์†Œ์—๋„ float ์ ์šฉ

4) ๋ถ€๋ชจ ์š”์†Œ ๋†’์ด ๋„‰๋„‰ํ•˜๊ฒŒ ์ง€์ •

- ์™„์ „ ๋น„์ถ”์ฒœ, ๋‚˜์ค‘์— ์ž์‹ ์š”์†Œ ์ถ”๊ฐ€ ๋ฐ ํฌ๊ธฐ ๋ณ€๊ฒฝ์ด ์žˆ์„ ์‹œ ๋ถ€๋ชจ ๋†’์ด๋„ ๋‹ค์‹œ ์ •ํ•ด์•ผ ํ•จ

0๊ฐœ์˜ ๋Œ“๊ธ€