7μ£Όμ°¨ κ³Όμ κ° λλκ³ μνΌμ λ§€λμ λκ» μ ν΄λ€μλ λλ§μ CSS κ°μκ° μμλμλ€.
CSS μμ±κ°λ€μ΄ 무κΆλ¬΄μ§νλ§νΌ κ°μλλ μλΉνλ€.
νμ§λ§ κ±±μ νλ κ²κ³Ό λ¬λ¦¬ λ°μμ
κ°μ¬λμ ν μ΅ κ°μμ€λ¬μ΄ κ·μ λ°νλ λμ
κ³Ό μ‘±μ§κ² νλ€μ΄ λ§μ μμ² λ§μ‘±μ€λ¬μ΄ κ°μμλ€.
λ μ΄μμμ λν CSSλ μΉ κ°λ°μ 곡λΆνμ§ μ΄μΈ 1λ
μ΄ λμ΄κ°κΈ°μ 주먹ꡬꡬ μμΌλ‘ κ·Έλ κ·Έλ νμν κ²μ μ°Ύμ보면μ λλ΅μ μΌλ‘λ μκ³ μμλ€.
κ·Έλμ μ΄λ²μλ CSSλ₯Ό λ€λ£¨λ©΄μ μ΄μλ₯Ό κ²ͺμλ λ΄μ©λ€μ λν΄μ μ κ·Έλ° μ΄μκ° λ¬μλμ§λ₯Ό κ°μλ₯Ό ν΅ν΄ μκ²λ κ²μ΄ μλλ° μ΄κ²λ€μ μ 리ν΄λ³΄λ €κ³ νλ€.
floatλ₯Ό μ μ ν λμ ν΄μ νμ§ μμΌλ©΄ μλ κ·Έλ¦Όκ³Ό κ°μ΄ 컨ν
μ΄λ λ°μΌλ‘ μμλ€μ΄ νμ΄λμ€κ² λλ€.
κΈ°λ³Έμ μΌλ‘ floatλ₯Ό λΆμ¬νλ€κ° ν΄μ λ₯Ό νκ³ μΆλ€λ©΄ ν΄μ λ₯Ό μμν μμμ clear μμ±μ λΆμ¬νλ©΄ λλ€.
νμ§λ§ μ΄ λ°©λ²μ clear μμ±μ μν νμμλ
div
νκ·Έμ κ°μ HTML μμλ₯Ό μΆκ°ν΄μΌ νλ€. μ΄ν clearλ₯Ό λ€μ μμ μ£ΌκΈ° μν μ μ§λ³΄μ λν λ²κ±°λ‘λ€.
λ°λΌμ λ€λ₯Έ λ°©λ²μ΄ νμνλ€!
λ κ°μ§ λ€λ₯Έ λ°©λ²μ΄ μλλ° μ΄ λ°©λ²λ€μ λ°λ‘ HTMLμ μμλ₯Ό μΆκ°νμ§ μκ³ λ ν΄μ κ° κ°λ₯νλ€.
λΆλͺ¨ 컨ν
μ΄λμ overflow: hidden
μ λΆμ¬νλ€.
λΆλͺ¨ 컨ν
μ΄λμ ::after
μ νμλ₯Ό ν΅ν΄ clear
μμ±μ λΆμ¬ν μμ μμλ₯Ό CSSμμ λμ μΌλ‘ μΆκ°νλ€.
νμ§λ§ 첫 λ²μ§Έ λ°©λ²μ λΆλͺ¨ 컨ν
μ΄λμ overflow
μμ±μ hidden
μ΄ μλ λ€λ₯Έ μμ±(visible
, clip
) λ±μ΄ νμν κ²½μ° hidden
μ μ§μ ν μ μλ μν©μ΄ λ°μν μλ μκΈ° λλ¬Έμ λ¬Έμ κ° λ°μνλ€.
λ°λΌμ λ λ²μ§Έ λ°©λ²μ΄ κ°μ₯ ν¨κ³Όμ μ΄λΌκ³ ν μ μλλ° μ΄ λ°©λ²λ μ£Όμν΄μΌ ν μ¬νμ΄ μλ€.
- λΆλͺ¨ 컨ν μ΄λ μμ λͺ¨λ μμκ°
float
μμ±μ κ°μ ΈμΌ νλ€.
κ·Έλ μ§ μμ μμκ° ν¬ν¨λμ΄ μλ€λ©΄ λ μ΄μμμ΄ λ§κ°μ§λ€.
μ΄ λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄μλ floatλ₯Ό μ§μ ν μμλ₯Ό λ λ€λ₯Έ λΆλͺ¨ νκ·Έλ‘ κ°μΈκ³ ν΄λΉ νκ·Έμ::after
μμλ₯Ό μΆκ°νλ©΄ λλ€.
κΈ°λ³Έμ μΌλ‘ λ μ΄μμμ νμν λλ z-index
λ₯Ό ν΅ν΄ μ°μ μμλ₯Ό μ€μ νλ€.
z-index
λ static
λ₯Ό μ μΈν λͺ¨λ position
μμ± μ€ νλλΌλ μ€μ λμ΄ μμΌλ©΄ μ μ©ν μ μλ€.
νμ§λ§ μ΄μ νλ‘μ νΈλ ν΄λ‘ μ½λ©μ μ§νν λ z-index
λ₯Ό λΆμ¬νμ§ μμλλ° μΌλΆ μμκ° μμμ νμλ λκ° μμλ€.
μ μ¬μ§κ³Ό κ°μ΄ z-index
λ₯Ό λ°λ‘ μ§μ νμ§ μμλλ° 2, 3λ²μ§Έ λ°μ€κ° 1λ² λ°μ€λ³΄λ€ μμ μλ κ²μ²λΌ λ λλ§λλ€.
μ΄μ κ° λ¬΄μμΌκΉ?
λ°λ‘ μμ λ§₯λ½μ΄λΌλ κ°λ λλ¬Έμ΄λ€.
μμ λ§₯λ½μ΄ λ°μνλ λ€μν κ²½μ°κ° μλλ° μ΄ μ€ 2, 3λ² λ°μ€μ μ μ©λ transform
κ³Ό opacity
μμ± λν ν΄λΉ μμμ μμ λ§₯λ½μ μμ±νμ¬ z-index
λ₯Ό μ μ©ν κ²μ²λΌ μμ λ§₯λ½μ΄ μμ±λμ§ μμ μμλ³΄λ€ μμμ μμΉνκ² λλ€.
λ°λΌμ λ μ΄μμμ λ°°μΉν λ λκ° z-index
λ₯Ό μ μ©νμ§ μμλλ° μ΄λ¬ν μ΄μκ° λ°μνλ©΄ μμ λ§₯λ½μ λν 곡μλ¬Έμ λΆλΆμ μ°Έκ³ ν΄λ³΄λ©΄ μ’μ κ±° κ°λ€.
flexμ gridλ₯Ό μ λͺ¨λ₯΄κ³ μ¬μ©ν λΉμ inline-flex λλ inline-gridλ₯Ό μ μ©νλλ° λΆλͺ¨ 컨ν
μ΄λ κ° μ¬λ°±μ΄ μλμΌλ‘ λ°μνλ λ¬Έμ λ₯Ό κ²ͺμμλ€.
λ λΆλͺ¨ 컨ν
μ΄λ νκ·Έμ λ§μ§ λ¬Έμ μΈκ°? λΌλ μκ° λλ¬Έμ margin
μ 0μΌλ‘ μ§μ ν΄λ³΄κΈ°λ ν΄λ΄€μ§λ§ κ·Έλλ‘μλ€.
μ΄λ² κ°μμμ κ·Έ μ΄μ λ₯Ό μκ² λμλ€. λ°λ‘ inline
μμ±μ΄ λΆμ¬λ μμμ κ³ μ ν νΉμ± λλ¬Έμ΄μλ€. inline
μμλ κΈμμ²λΌ μ΅μ λλΉλ₯Ό μ μ§νλ €κ³ νκ³ HTML μμμ inline
μμ κ° λμ΄μ°κΈ°κ° μλ€λ©΄ κ³΅λ°±μ΄ μ μ©λλ κ²μ΄μλ€.
μ¬μ§μμλ μ€λ°κΏμ΄ μ‘΄μ¬νλ―λ‘ λμ΄μ°κΈ°κ° μ μ©λμ΄ μ¬λ°±μ΄ λ°μνλ κ²μ΄μλ€.
κ·Έλμ λ¨μνμ§λ§ HTMLμμ λΆλͺ¨ 컨ν μ΄λλ₯Ό λΆμ¬μ μμ±νκ² λλ©΄ κ³΅λ°±μ΄ μ¬λΌμ§λ€.
νμ§λ§ κΌ inline
μμ±μ΄ νμν κ²μ΄ μλλΌλ©΄ λλλ‘μ΄λ©΄ κΈ°μ‘΄ flex
λ grid
μμ±μ μ¬μ©νκ³ λ§μ§μ μ‘°μ νλλ‘ νλ κ²μ΄ μ΄λ° μ΄μλ₯Ό κ²ͺμ§ μλ λ°©λ²μ΄λ€.
νμ νκ³Ό μ΄μ΄ μμ§κΉμ§ νΌλμ΄ μ¨λ€... λ€μ 곡μ λ¬Έμμ grid νλͺ©μ νμΈνκ³ grid-template-areas
μμ±μ ν΅ν΄ μμμ μ΄λ¦μ λΆμ¬μ μκ°μ μΌλ‘ λ μ΄μμμ ꡬμ±νλ μ°μ΅μ ν΄μΌκ² λ€.
::after
κ°μ μμλ :nth-child
λ±μ λ§μ΄ μ¬μ©νμ§ μμμλλ° μ μ©ν΄λ³΄μμΌκ² λ€.π ν΄λΉ λ΄μ©μ 곡λΆνλ©΄μ μ 리ν κΈμ λλ€. νλ¦° λΆλΆμ΄λ μ€ν΄νκ³ μλ λΆλΆμ΄ μλ€λ©΄ νΌλλ°± λΆνλ립λλ€.