Float

mingjiΒ·2022λ…„ 5μ›” 26일
0
post-thumbnail
post-custom-banner

πŸ“– Float μ΄λž€ ?

Float은 ν•΄λ‹Ή μš”μ†Œλ₯Ό μ–΄λ–»κ²Œ λ„μšΈ 것인지λ₯Ό λ‚˜νƒ€λ‚΄λŠ” 속성이닀.
floatλ₯Ό μ“°κ²Œλ˜λ©΄ μš”μ†Œ κ·Όμ²˜μ— λ– λ‹€λ‹ˆκ²Œ 되고,κ·Έ 주변에 λ°°μΉ˜λ˜λ„λ‘ λ§Œλ“œλŠ” css 속성이닀.
μš”μ†Œλ₯Ό λ„μš°κ²Œ 되면 λ¬Έμ„œμ˜ νλ¦„μ—μ„œ λΉ μ§€κ²Œλ˜κ³ , κ°€μž₯μžλ¦¬μ— λ‹Ώμ„λ•ŒκΉŒμ§€ 쒌 우둜 μ΄λ™λœλ‹€.


πŸ“– Float 성격

  • block 속성 λ¬΄μ‹œ
  • ν˜•μ œ ꡬ쑰둜 이루어짐
  • ν•΄λ‹Ή μš”μ†Œλ“€μ˜ 높이값이 λ§žμ•„μ•Ό λ―Έλ””μ–΄ 쿼리 μ •μƒμž‘λ™ 됨
  • float이 μ„€μ •λœ μš”μ†ŒλŠ” λΈŒλΌμš°μ € 높이 값을 μΈμ§€ν•˜μ§€ λͺ»ν•¨

πŸ“– Float 속성

1. none - float: none;
κΈ°λ³Έ 속성 , μš”μ†Œλ₯Ό λ„μš°μ§€ μ•ŠλŠ”λ‹€.
2. left - float: left;
μš”μ†Œλ₯Ό μ™Όμͺ½μœΌλ‘œ λ„μš΄λ‹€
3. right - float: right
μš”μ†Œλ₯Ό 였λ₯Έμͺ½μœΌλ‘œ λ„μš΄λ‹€
4. inherit - float: inherit
λΆ€λͺ¨μ˜ 속성을 상속 λ°›λŠ”λ‹€

πŸ’‘ float 속성을 μ‚¬μš©ν•  μš”μ†ŒλŠ” position μ†μ„±μ˜ absolute κ°’κ³Ό 양립할 수 μ—†λ‹€.


πŸ“– clear 속성

1. none - clear : none
clear μ„€μ •ν•˜μ§€ μ•Šμ€κ²ƒκ³Ό κ°™λ‹€
2. left - clear : left
μ™Όμͺ½μœΌλ‘œ 움직인 float 정렬을 μ·¨μ†Œν•œλ‹€
3. right - clear : right
였λ₯Έμͺ½μœΌλ‘œ 움직인 float 정렬을 μ·¨μ†Œν•œλ‹€
4. both - clear : both
였λ₯Έμͺ½, μ™Όμͺ½ λͺ¨λ‘ λΆ™λŠ” float 정렬을 μ·¨μ†Œν•œλ‹€ (κ°€μž₯ 많이 μ‚¬μš©ν•¨)


πŸ“– Float ν•΄μ œν•˜λŠ” 방법

1 . clear 속성 μ‚¬μš©
float 의 영ν–₯을 받지 μ•Šλ„λ‘ ν•œλ‹€λŠ” μ˜λ―Έμ΄λ‹€.
clear 속성은 ' μ·¨μ†Œν•˜λ‹€ ' λΌλŠ” 의미λ₯Ό 가지고 μžˆμ–΄ float 값을 ν•΄μ œν•˜μ—¬ 높이 값을 μΈμ‹ν•˜κ²Œ λœλ‹€.

2 . λΆ€λͺ¨μ—κ²Œ λ˜‘κ°™μ΄ float속성 μ‚¬μš©
λΆ€λͺ¨μš”μ†Œκ°€ μžμ‹μš”μ†Œμ˜ 높이λ₯Ό μΈμ§€ν•˜κ²Œ λ˜μ§€λ§Œ
λΆ€λͺ¨μš”μ†Œκ°€ inline-block속성을 κ°–κ²Œλ˜λ―€λ‘œ λ ˆμ΄μ•„μ›ƒ 상황에 맞게 μ‚¬μš©ν•΄μ•Όν•œλ‹€.

3 . clearfix μ‚¬μš©
μƒμœ„(λΆ€λͺ¨)에 .clearfixλ₯Ό μ„€μ •ν•˜λ©΄ float으둜 μ˜μ—­μ΄ κΉ¨μ§€λŠ” ν˜„μƒμ„ λ°©μ§€ν•˜κ²Œ λœλ‹€.
clearfix classλ₯Ό 미리 생성해두고 μ΅œμƒλ‹¨μ— μœ„μΉ˜ ν›„
css의 가상 μš”μ†Œ 쀑에 :after λ₯Ό μ΄μš©ν•œλ‹€.
.clearfix:after{content:""; display:block; clear:both;}
after : .clearfix의 κ°€μƒν΄λž˜μŠ€λ₯Ό λœ»ν•¨
content:""; : 빈 곡간을 λœ»ν•¨

4 . overflow:hidden 속성 μ‚¬μš©
float μ‚¬μš©ν–ˆμ„ λ•Œ κ·Έ λΆ€λͺ¨ μ˜μ—­μ˜ 높이가 μ—†μ–΄μ Έ 버린닀.
이 속성은 λΆ€λͺ¨μš”μ†Œμ—κ²Œ μ μš©ν•΄μ•Όν•˜λ©° λΆ€λͺ¨μš”μ†Œκ°€ μžμ‹μš”μ†Œ μ½˜ν…μΈ λ₯Ό μˆ¨κΉ€μ²˜λ¦¬ν•΄μ£Όλ € ν•˜κΈ°λ•Œλ¬Έμ—
μžμ‹μš”μ†Œμ˜ 높이λ₯Ό μΈμ§€ν•˜κΈ° μœ„ν•΄ μžλ™μœΌλ‘œ 높이값을 κ³„μ‚°ν•˜κ²Œ λœλ‹€.

πŸ’‘ μžμ‹μš”μ†Œκ°€ λΆ€λͺ¨μš”μ†Œλ₯Ό λ²—μ–΄λ‚˜ λ³΄μ—¬μ€˜μ•Όν•  경우 overflow:hidden 속성을 μ‚¬μš©ν•˜κ²Œ 되면 보여쀄 수 μ—†κ²Œ λ˜λ―€λ‘œ 상황에 따라 μ„ νƒμ μœΌλ‘œ μ‚¬μš©ν•˜λŠ” 것을 ꢌμž₯함.




πŸ“– Float Test

βœ… float 적용 (X)


βœ… .box1 => float 적용
.box1 에 float을 μ£Όμ—ˆλ”λ‹ˆ box1 μš”μ†Œκ°€ λΆ• λœ¨κ²Œλœλ‹€.
κ·Έλž˜μ„œ κ·Έ λ°‘ 곡간이 λΉ„μ›Œμ§€κ²Œ λ˜λ©΄μ„œ box2κ°€ box1자리둜 올라온 것이닀.


βœ… .box1 와 .box2 => float 적용
.box1 와 .box2 에 float을 μ€˜μ„œ 같은 곡간에 같이 λΆ• λœ¨κ²Œλœλ‹€.
κ·Έλž˜μ„œ κ·Έ λ°‘ 곡간이 λΉ„μ›Œμ§€κ²Œ λ˜μ–΄ box3 κ°€ μ˜¬λΌμ™”λ‹€.


βœ… .box3 => clear:both 적용
.box1 와 .box2 에 float을 μ€˜μ„œ 같은 곡간에 같이 λΆ• λœ¨κ²Œλœλ‹€.
그럼 κ·Έ λ°‘ 곡간은 λΉ„μ›Œμ§€κ²Œ λ˜μ–΄ μ›λž˜ box3 κ°€ μ˜¬λΌμ™€μ•Όν•œλ‹€.
ν•˜μ§€λ§Œ .box3 μ—κ²Œ clear:both λ₯Ό μ μš©μ‹œμΌœμ£Όμ–΄ float 속성을 ν•΄μ œμ‹œμΌ°λ”λ‹ˆ
빈 κ³΅κ°„μœΌλ‘œ μ˜¬λΌμ˜€μ§€ μ•ŠλŠ”λ‹€.


βœ… .box1 => overflow:hidden 적용
.box1 에 overflow:hidden을 μ£Όμ—ˆλ”λ‹ˆ
μžμ‹μš”μ†Œλ“€μ΄ λΆ€λͺ¨μš”μ†Œμ˜ 크기에 맞게 λ³΄μ—¬μ§€κ²Œ λœλ‹€.






πŸ“λ§ˆλ¬΄λ¦¬

clearfix μ΅œλŒ€ν•œ μ΄ν•΄ν•˜λ € μ• μΌμ§€λ§Œ μ–΄λ ΅λ‹€..

profile
μ•Œκ³  싢은 게 λ§Žμ€ 얼은이
post-custom-banner

0개의 λŒ“κΈ€