์นํ์ด์ง๋ฅผ ๊ตฌ์ฑํ๋ ํต์ฌ ์์ ์ค ํ๋๊ฐ ํฐํธ(๊ธ๊ผด)๋ค.
ํ์ง๋ง ๋๋ถ๋ถ ๋ฌด์ฌ์ฝ Google Fonts
๋ฅผ ๋งํฌํ๊ฑฐ๋,
๋์์ด๋๊ฐ ์ ๋ฌํ TTF ํ์ผ์ ๊ทธ๋๋ก @font-face
๋ก ์ ์ฉํ๊ณ ๋๋ด๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค.
์ฌ์ค ์นํฐํธ๋ ํ์ด์ง ์ฑ๋ฅ, ์ฌ์ฉ์ ๊ฒฝํ, SEO์๊น์ง ์ํฅ์ ์ค ์ ์๋ ์ค์ํ ์์๋ค.
์ด๋ฒ ๊ธ์์๋ ํฐํธ๋ฅผ ์ด์๊ฒ ๋ณด์ด๊ฒ ํ๋ ๋ฐฉ๋ฒ์ด ์๋๋ผ, ์ ๋ณด์ด๊ณ ๋น ๋ฅด๊ฒ ์ ์ฉ๋๋ ์ ๋ต์ ์ ๋ฆฌํด๋ดค๋ค.
ํ ์คํธ๊ฐ ๋ณด์ด์ง ์๋ค๊ฐ ํฐํธ ๋ก๋ฉ์ด ์๋ฃ๋ ํ ํ ๋ฒ์ ํ์๋๋ ํ์
โ ์ฌ์ฉ์ ์ ์ฅ์์ ๊ณต๋ฐฑ ์ํ๊ฐ ๋ณด์
๊ธฐ๋ณธ ํฐํธ๋ก ๋จผ์ ํ์๋ ํ, ํฐํธ ๋ก๋ฉ์ด ๋๋๋ฉด ํฐํธ๊ฐ ๊ฐ์๊ธฐ ๋ฐ๋๋ ํ์
๋ฐฉ์ | ์ค๋ช | ์ฅ์ | ๋จ์ |
---|---|---|---|
@import from Google Fonts | CSS ํ์ผ์ ์ํฌํธ | ๊ฐ๋จํจ | ๋๋ฆผ, ์ฐจ๋จ ์ํ |
<link> ํ๊ทธ ์ฌ์ฉ | HTML <head> ์ ๋งํฌ | ๋ ๋๋ง ์ฐจ๋จ ์์ | ์๋ ๋๋ฆผ |
@font-face ์ง์ ํธ์คํ
| ์๋ฒ์ ํ์ผ ๋๊ณ import | ์ปค์คํฐ๋ง์ด์ง ๊ฐ๋ฅ | ์ง์ ๊ด๋ฆฌ ํ์ |
@font-face {
font-family: 'Pretendard';
src: url('/fonts/pretendard.woff2') format('woff2');
font-display: swap;
}
woff2
๋ ๊ฐ์ฅ ๊ฐ๋ณ๊ณ ์ต์ ๋ธ๋ผ์ฐ์ ์ง์๋ฅ ์ด ์ข์font-display: swap
์ FOUT์ ํ์ฉํ๊ณ FOIT๋ฅผ ๋ฐฉ์ง๊ฐ | ์ค๋ช |
---|---|
auto | ๋ธ๋ผ์ฐ์ ๊ธฐ๋ณธ (๋๊ฐ FOIT ๋ฐ์ ๊ฐ๋ฅ) |
block | 3์ด ๊ธฐ๋ค๋ ธ๋ค๊ฐ ํฐํธ ๋ก๋ฉ (FOIT ๋ฐ์ ๊ฐ๋ฅ) |
swap | ๊ธฐ๋ณธ ํฐํธ๋ก ๋จผ์ ๋ณด์ฌ์ฃผ๊ณ , ๋์ค์ ๊ต์ฒด (FOUT ๋ฐ์) |
fallback | 100ms ์ด๋ด ํฐํธ ์์ค๋ฉด ๊ธฐ๋ณธ ํฐํธ ์ ์ง |
optional | ์ ์ ๋คํธ์ํฌ ์ํฉ์ ๋ฐ๋ผ ๋ก๋ฉ ์์ฒด๋ฅผ ์๋ตํ ์๋ ์์ |
woff2
๋ง ์ฌ์ฉwoff2
์ง์ (IE ์ ์ธํ๋ฉด OK)fonttools
, glyphhanger
, subset-font
๋ฑ ํด ์ฌ์ฉ<link
rel="preload"
href="/fonts/pretendard.woff2"
as="font"
type="font/woff2"
crossorigin="anonymous"
/>
โ ์ด๊ธฐ ๋ ๋๋ง ์ ์ ํฐํธ ๋จผ์ ๋ก๋ฉ
๋์์ธ ์์คํ
์ ๋ง๋ค๋ฉด์ ์นํฐํธ ์ค์ ์ ์ฒ์๋ถํฐ ๊ตฌ์ฑํ๋๋ฐ,
๊ทธ๋ font-display
ํ๋ ๋๋ฌธ์ ์ฒซ ํ์ด์ง ๋ ๋๋ง์ด ๋ช ์ด ์ง์ฐ๋๋ ๊ฑธ ๋ณด๊ณ ์ถฉ๊ฒฉ์ด์๋ค.
์ง๊ธ์ font-display: swap
+ preload
+ woff2
๋ฅผ ๊ธฐ๋ณธ ๊ตฌ์ฑ์ผ๋ก ์ฐ๊ณ ์๊ณ ,
์ฑ๋ฅ ์ธก์ ๋๊ตฌ(Lighthouse) ์ ์๋ 20์ ์ด์ ์์นํ ๊ฒฝํ์ด ์๋ค.
๐ก โ์ด์๊ฒ ๋ณด์ด๋ ๊ฒ๋ณด๋ค, ๋นจ๋ฆฌ ๋ณด์ด๋ ๊ฒ UX๋ค.โ