CSS Basics
Table of Contents
CSS μ μ λ°©λ² / μ νμ /μμ± μ μΈ
μμ¬ ν΄λμ€ (pseudo class)
λ―Έλμ΄ μΏΌλ¦¬
μμ λ° μ°μ μμ -> μ΄λ¬λ μ€λ₯ μμ μ£Όμ!
Why CSS (Cascading Style Sheets) ?
HTML
μ λ¬Έμμ ꡬ쑰ν (Markup)CSS
μ μ€νμΌμ μ μνλ€
CSS κΈ°λ³Έ μ¬μ©λ²
h2 =>
Selector
color =>
Property
blue =>
Value
CSS μ μλ°©λ²
In-line Styling
ν΄λΉ tagμ μ§μ
style
μμ±μ νμ©
λ΄λΆ μ°Έμ‘° (embedding)
HTML file λ΄μ
<style>
tag λ΄μ μ§μ
μΈλΆ μ°Έμ‘° (link file)
float.html
float.css
μ΄λ€ CSS μ μ λ°©λ²μ΄ μ³μκΉ?
μΈλΆμ°Έμ‘°λ₯Ό νλ κ²μ΄ λ°λ³΅λλ μ½λλ₯Ό μ€μΌ μ μλ€!
CSS Selector
HTML λ¬Έμμ νΉμ ν μμλ₯Ό μ ννμ¬ μ€νμΌλ§ νκΈ° μν΄μλ λ°λμ μ νμ λΌλ κ°λ μ΄ νμνλ€
κΈ°μ΄ μ νμ
κ³ κΈ μ νμ
μμ μ νμ / μ§κ³ μμ μ νμ
νμ / μΈμ νμ μ νμ, μ 체 μ νμ
μμ¬ ν΄λμ€ (pseudo class)
link, λμ μμ¬ ν΄λμ€
ꡬ쑰μ μμ¬ ν΄λμ€
κΈ°ν μμ¬ ν΄λμ€, μμ¬ μ¨λ¦¬λ¨ΌνΈ
CSS Tip
: λλ κ² vs νλ©΄ μλλ κ²μ μ ꡬλΆνκΈ°
CSS μμ
μμ± μ€μλ μμ λλκ²κ³Ό μμ μλ κ²μ΄ μλ€
μμ λλ κ²
Text
κ΄λ ¨ μμ (front, color, text-align, opacity, visibility)
μμ λμ§ μλ κ²
`Box model κ΄λ ¨ μμ (width, height, padding, border, box-sizing, display)
position
κ΄λ ¨ μμ (position, top/right/bottom/left, z-index)
+
CSS Inheritance from MDN
+
CSS Inheritance from MDNIn CSS, inheritance controls what happens when no value is specified for a property on an element. Refer to any CSS property definition to see whether a specific property inherits by default ("
Inherited: yes
") or not ("Inherited: no").
CSS μ μ© μ°μ μμ (Cascading order)
μ€μλ (Importance) - μ¬μ©μ μ£Όμ (μλλ©΄ μ΅κ°!!)
important
vendor, bootstrap λ± λ΄κ° μμ±νμ§ μκ³ μΈλΆμμ λ°μμ¨ CSSλ JavaScript κΈ°λ°μ λΌμ΄λΈλ¬λ¦¬λ€μ μ¬μ©ν μ μ°μ μμλ₯Ό μ£ΌκΈ° μν΄ overriding ν λ μ¬μ©
κ·Έ μΈμλ μ μ°μ§ μλλ€ (λ무 κ°λ ₯ν΄μ!)
μ°μ μμ (Specificity)
in-line / id μ νμ / class μ νμ / μμ± μ νμ, Pseudo-class / μμ μ νμ
Source code μμ
λμ€μ μ μλ κ²μ΄ λ μ°μ μμλ₯Ό κ°λλ€!!!
ν¬κΈ°λ¨μ (μλ)
px
%
em
λ°°μλ¨μ
μμμ μ§μ λ sizeμ μλμ μΈ sizeλ₯Ό κ°μ§
rem
μ΅μμ μμ(HTML)μ μ¬μ΄μ¦λ₯Ό κΈ°μμΌλ‘ λ°°μ λ¨μλ₯Ό κ°μ§
viewport κΈ°μ€ λ¨μ
vw
,vh
,vmin
,vmax
em
vs rem
em
vs rem
em
μκΈ°κ° κ°μ μ μλ ν¬κΈ°μ λ°°μ
μμμ λ°μμ κ·Έ μμ λν΄ em
24px μΌλ 1.5em == 36px
rem
root em
rootλ₯Ό κΈ°μ€μΌλ‘ ν¨ (browser κΈ°μ€!)
κΈ°λ³Έμ μΌλ‘ browser pixcel size == 16px
1.5 rem == 24px
μμ λ¨μ
HEX (00~ff)
#ffffff
RGB (0, 255)
rgb(0,0,0)
RGBA
rgba(0, 0, 0, 0.5)
Box model
λͺ¨λ htmlμ box modelμ κ°κ³ μμ
μνμ’μ°
μν / μ’μ°
μ / μ’μ° / ν
μ / μ° / ν / μ’
box-sizing
κΈ°λ³Έμ μΈ λͺ¨λ μμμ
box-sizing
μcontent-box
(browser default κ°μ)paddingμ μ μΈν μμ contents μμλ§μ boxλ‘ μ§μ
λ€λ§, μ°λ¦¬κ° μΌλ°μ μΌλ‘ μμμ λ³Ό λλ paddingμ ν¬ν¨ν borderκΉμ§μ λλΉλ₯Ό 100pxλ‘ λ³΄λ κ²μ μν¨
κ·Έ κ²½μ°
box-sizing
μborder-box
λ‘ μ€μ νλ€!
Tip!
Margin Collapsing
: μΈμ νμ μμκ°μ marginμ΄ κ²Ήμ³μ 보μ
display inline vs block
block level μμμ inline level μμ κ΅¬λΆ (HTML 4.1κΉμ§λ§)
λνμ μΈ block level μμ
div
ul / ol / li
p
hr
form
λνμ μΈ inline level μμ
span
a
img
input, label
b, em i, strong
1. display: block
μ€ λ°κΏμ΄ μΌμ΄λλ μμ
νλ©΄ ν¬κΈ° μ 체μ κ°λ‘νμ μ°¨μ§νλ€
κΈ°λ³Έμ μΌλ‘ νλ©΄ λλΉμ 100%λ₯Ό κ°μ§
λλΉλ₯Ό κ°μ§ μ μλ€λ©΄, μλμΌλ‘ marginμ μ€λ²λ¦Ό
κ·Έλμ μ€ λ°κΏμ΄ μΌμ΄λ¨!
block level μμ μμ inline level μμκ° λ€μ΄κ° μ μμ
2. display: inline
μ€ λ°κΏμ΄ μΌμ΄λμ§ μλ νμ μΌλΆ μμ
content λλΉλ§νΌ κ°λ‘νμ μ°¨μ§νλ€
width, height, margin-top, margin-bottomμ μ§μ ν μ μλ€
μνμ¬λ°±μ
line-height
λ‘ μ§μ νλ€
3. inline-block
blockκ³Ό inline level μμμ νΉμ§μ λͺ¨λ κ°λλ€
inlineμ²λΌ ν μ€μ νμνλ€
block μ²λΌ
width
,height
,margin
μμ±μ λͺ¨λ μ§μ ν μ μλ€
μμ±μ λ°λ₯Έ μν μ λ ¬
inline μμλ
text-align
μμ±μ μΈ μ μμblock μμλ
margin
μ κΈ°μ€μΌλ‘ μ λ ¬ν΄μΌν¨
Last updated
Was this helpful?