๐คฆโโ๏ธ px์ % ๋ฐ์ ๋ชฐ๋๋ ์์ฌ...
" ๋๋ 10์... ๋ชจ ์น์ฌ์ดํธ css๋ฅผ ๋ณด๋ฉฐ ํด๋ก ์ฝ๋ฉ์ ํ๋ ์ค.. 0 1.6rem? ์ด๊ฒ ๋ญ์ผ? "
๐ Length๋ฅผ ํํํ๋ CSS Unit์ ์ข
๋ฅ
Unit์ ์ข
๋ฅ๋ ๋ค์ํ๋ค. ํฌ๊ฒ ๋๊ฐ์ง๋ก ๋๋๋ค:
- Relative Length
ex) em, ex, ch, rem, vw, vh, vmin, vmax, %
- Absolute Length
ex) cm, mm, in, px, pt pc
Relative Length๋ ํ ๊ธธ์ด ์์ฑ์ ์๋์ ์ธ ๊ธธ์ด๋ฅผ ๋ปํ๋ฉฐ Absolute Length๋ ๊ณ ์ ๋ ๊ธธ์ด๋ค.
๐ %
- %(percent)๋ ๊ณ ์ ๋ ๊ฐ์ด ์์ผ๋ฉฐ ๋ฐ๋๋ค
- em๊ณผ ๋น์ทํ๋ค
ex) em = 100%, 8em = 800%
๐ px
- ๊ณ ์ ๋ ๊ฐ์ด๋ฉฐ ์๋ฐ๋๋ค
- ๊ณ ํ์ง์ ์คํฌ๋ฆฐ์ธ ๊ฒฝ์ฐ ํฐํธ๊ฐ ๋ ์๊ฒ ๋ ๋๋ง ๋ ์ ์๋ค
์ด๋ฏธ์ง: https://guinatal.github.io/css-font-size-and-units-of-length/
๐ em
- em์ ๋ถ๋ชจ font-size๋ฅผ ๋ฌผ๋ ค๋ฐ๋๋ค
๊ทธ๋ฌ๋ฏ๋ก nesting์ ํ ์ ์ํฅ์ ๋ฐ์ ํ๋ฅ ์ด ๋์ผ๋ฉฐ ๋งค์ฐ ์ ์ฐํ๋ค
- ๋ถ๋ชจ์ font-size๊ฐ ์ง์ ์๋์ด์์ผ๋ฉด(์น์ ๊ธฐ๋ณธ font-size์ธ) 16px์ด๋ค
- ๋ถ๋ชจ๊ฐ 16px, ์์์ด 8em์ด๋ฉด, 16 * 8 = 128px๋ก ๊ณ์ฐํ ์ ์๋ค
๐ rem
-
root element์ font-size๋ฅผ ์๋ฏธํ๋ค
์ฌ๊ธฐ์ ์ต๊ณ (Most high up) root๋ ๋ฐ๋ก <html>
์ด๋ค
-
<html>
์ font-size๋ฅผ CSS์์ ๋ฐ๊ฟ ์ em, rem ๋ ๋ค ๋ฐ๋๋ค
-
๋ถ๋ชจ๋ ์์๋ ๋ ๋ค root์ ์ํฅ์ ๋ฐ๋๋ค
ex)
<html>
: 16px
๋ถ๋ชจ : 8em (128px)
์์: 0.5rem์ผ์
--> ์์์ ๋ถ๋ชจ์ ์์ฑ ๊ฐ์ด ์๋ ๋ฃจํธ์ ๊ฐ 16px๋ฅผ ๋ฐ์... 0.5 * 16 = 8px์ด ๋๋ค
๐ vw
- viewport width์ ์๋์ ์ธ ๊ฐ์ด๋ฉฐ, ์ฌ๊ธฐ์ 10vw๋ viewport width์ 10%๋ฅผ ์๋ฏธ
- ๊ทธ๋ฌ๋ฏ๋ก ๋ธ๋ผ์ฐ์ ์ ๋๋น ํฌ๊ธฐ๋ฅผ ์กฐ์ ํ๋ฉด .vw์ ์ฌ์ด์ฆ๊ฐ ๋ฐ๋ ๊ฒ์ด๋ค
.vw {
width: 10vw;
}
๐ vh
- viewport height์ ์๋์ ์ธ ๊ฐ
- ๋๊ฐ์ด ๋ธ๋ผ์ฐ์ ์ ๋์ด ํฌ๊ธฐ๋ฅผ ์กฐ์ ํ๋ฉด ์ฌ์ด์ฆ๊ฐ ๋ฐ๋๋ค
๐ vmin, vmax
- viewport์ ์ต์๊ฐ, ์ต๋๊ฐ
๐ก ์ ์ฉํ ๋งํฌ
์๋ฆฌ๋์ด ์๋ ค์ฃผ์ ๋งํฌ: http://pxtoem.com/
์ปค์คํ
์ปจ๋ฒํฐ์ ๊ฐ๋จํ body font size ํ
์ด๋ธ๋ ์์ด px์์ em์ผ๋ก, em์์ px์ผ๋ก ๊ฐ์ ์ฝ๊ฒ ๊ณ์ฐํ ์ ์๋ค.
Reference