์น์ฌ์ดํธ CSS ์ด๊ธฐํ ๋ฐฉ๋ฒ๊ณผ ํ์์ฑ: CLS ์ ์ ๊ฐ์ ์ ์ํ SEO ์ ๊ฒ ๋ฐฉ๋ฒ
๋ธ๋ผ์ฐ์ ๊ธฐ๋ณธ CSS ์ฐจ์ด๋ก ๋ฐ์ํ๋ ๋ ์ด์์ ๋ณํ๊ณผ CLS ์ ์ ํ๋ฝ์ CSS ์ด๊ธฐํ๋ก ํต์ ํด ๋ ๋๋ง ์์ ์ฑ๊ณผ UX๋ฅผ ํ๋ณดํ๊ณ , ๊ฒ์์์ง ํ๊ฐ์ ๋ ธ์ถ ์์๋ฅผ ๊ฐ์ ํ๋ ๊ธฐ์ ์ SEO ๊ธฐ์ค๊ณผ ์ ์ฉ ๋ฐฉ๋ฒ์ ๋๋ค.
CSS ์ด๊ธฐํ์ ์ ์์ ๊ฒ์์์ง ํ๊ฐ์ ๋ฏธ์น๋ ์ํฅ
CSS ์ด๊ธฐํ (CSS Reset)๋ ์น ํ์ด์ง์ ๋ ์ด์์ ๋ณ๋์ ์ค์ด๊ธฐ ์ํ ์ค์ํ ์์ ์ค ํ๋์ ๋๋ค. ๊ทธ ์ด์ ๋ ๊ฐ๊ธฐ ๋ค๋ฅธ ์ธํฐ๋ท ๋ธ๋ผ์ฐ์ ๋ค์ด ๊ธฐ๋ณธ์ ์ผ๋ก ์ค์ ํด ๋์ ์คํ์ผ์ด ์๋ก ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ด๋ก ์ธํด ์น ํ์ด์ง์ ๋ ์ด์์์ด๋ ๋์์ธ์ด ๋ธ๋ผ์ฐ์ ๋ง๋ค ๋ค๋ฅด๊ฒ ํ์๋ ์ ์์ผ๋ฉฐ, ์ด๋ ์ผ๊ด์ฑ ์๋ ์ฌ์ฉ์ ๊ฒฝํ(UX)์ผ๋ก ์ด์ด์ง๋๋ค.
CSS ์ด๊ธฐํ ์์ ์ ์ฌ๋ฌ ์ข ๋ฅ์ ์ธํฐ๋ท ๋ธ๋ผ์ฐ์ ๊ฐ ๊ธฐ๋ณธ์ ์ผ๋ก ์ค์ ๋ ์คํ์ผ์ด ์๋ก ํ๋ฆฌ๊ธฐ ๋๋ฌธ์ ๋ฐ์ํ ์ ์๋ ๋ถ์ผ์น๋ฅผ ์ ๊ฑฐํ๊ณ ๊ธฐ๋ณธ์ ์ผ๋ก ์ค์ ๋ CSS์คํ์ผ์ CSS์ด๊ธฐํ๋ฅผ ํตํด ์ผ๊ด๋๊ณ ์๋๋ ๋ฐฉํฅ์ผ๋ก ์ ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. CSS ์ด๊ธฐํ๋ฅผ ํ์ง ์๊ฒ ๋๋ฉด ๊ธฐ์กด์ ์ค์ ๋ ๋ธ๋ผ์ฐ์ ์๊ธฐ๋ณธ CSS์์๊ฐ ์ ์ฉ๋ ์ ์๊ณ , CSS ์์๊ฐ ์ ์ฉ๋๋ ๊ณผ์ ์์ ์ด๋ฏธ ์ค์ ํ CSS์ ์ถฉ๋ ๋ฐ ๋ ์ด์์์ ๋ณํ์ด ๋ฐ์ํ ์ ์์ต๋๋ค.
CSS ์ด๊ธฐํ๋ฅผ ํ์ง ์์ผ๋ฏ๋ก์ ๋ฐ์ํ ์ ์๋ CSS์ ๋ณํ๊ณผ ์ถฉ๋์ ์ ์ฒด ํ์ด์ง์ ๋ ๋๋ง์ ์๊ฐ์ด ๋ ์์๋ ์ ์๊ณ ๊ฒ์ ์์ง ์ต์ ํ์ CLS(Cumulative Layout Shift) ์ ์์ ๋ถ์ ์ ์์๋ก ์์ฉํ ์๋ ์์ต๋๋ค. CLS๋ ์น์ฌ์ดํธ์ ๋ก๋ฉ ์๋์ ์๊ฐ์ ์์ ์ฑ์ ์ธก์ ํ๋ ํต์ฌ ์งํ์ด๋ฉฐ, ์ด๋ ๊ณง ๊ฒ์์์ง ํ๊ฐ์ ๋ ธ์ถ ์์์ ์ง์ ์ ์ธ ์ํฅ์ ์ค๋๋ค.
CSS ์ด๊ธฐํ์ SEO ์ ๊ฒ ๊ด์ ์์์ ํ์์ฑ
- ๋ธ๋ผ์ฐ์ ์ผ๊ด์ฑ ์ ์ง: ๊ธฐ๋ณธ ์คํ์ผ์ ์ ์ฉํ์ฌ ๋ธ๋ผ์ฐ์ ๊ฐ ๋ณ๊ฒฝ๋๋๋ผ๋ ์ผ๊ด์ฑ ์๋ ์ฌ์ฉ์ ๊ฒฝํ(UX)์ ์ ๊ณตํฉ๋๋ค.
- ์ค๋ฅ ๋ฐ ๋ฒ๊ทธ ์๋ฐฉ: ์ด๊ธฐ ๋์์ธ ์์ ์ ์์ธกํ ์ ์๋ ์ค๋ฅ์ ๊ณํํ์ง ์์ ๋์์ธ์ ๋ฌธ์ ๋ฅผ ์ฌ์ ์ ํ์ ํ๊ณ ์กฐ์นํ ์ ์์ต๋๋ค.
- ํธํ์ฑ ํฅ์: ๋์์ธ ์ฌ์ฌ์ฉ์ด ์ฌ์์ง๊ณ ํ๋ก์ ํธ๋ง๋ค์ ํธํ์ฑ์ ๊ธ์ ์ ์ธ ํจ๊ณผ๊ฐ ์์ต๋๋ค. ํ๋ก ํธ์๋ ์ต์ ํ์ ๊ธฐ๋ณธ ๋จ๊ณ์ ๋๋ค.
- CLS ์ ์ ๊ฐ์ : ๋ ๋๋ง ์ ๋ฐ์ํ ์ ์๋ ๋ณํ๊ณผ ์ถฉ๋์ ๋ฐฉ์งํด์ ์์ ์ ์ธ ๋ ์ด์์๊ณผ ํ์ด์ง ๋ก๋ฉ ์๋ ํฅ์์ ์ ๋ํ์ฌ ๊ฒ์์์ง ํ๊ฐ๋ฅผ ๋์ ๋๋ค.
- ๊ธฐ์ ์ SEO ํ๋ณด: ์์ธ ์ํ๋ฅผ ์์ ํํ๊ณ ๋ ๋๋ง ํจ์จ์ ๋์ฌ ๊ธฐ์ ์ SEO์ ๊ธฐ๋ณธ ํ ๋๋ฅผ ๋ง๋ จํฉ๋๋ค.
3๋จ๊ณ: ํ์ค CSS ์ด๊ธฐํ ๋ฐฉ๋ฒ ๋ฐ ์ฝ๋ ์ ์ฉ
CSS ์ด๊ธฐํ ๋ฐฉ๋ฒ๋ก ๋น๊ต
| ์ด๊ธฐํ ๋ฐฉ์ | ์ฃผ์ ํน์ง | CLS ์ ์ ๊ฐ์ ๊ธฐ์ฌ๋ | SEO ์ ๊ฒ ํ์ฉ ๋ฐฉ์ |
|---|---|---|---|
| Universal Reset | ๋ชจ๋ ์์์ ๋ง์ง/ํจ๋ฉ ์ ๊ฑฐ | ์ค๊ฐ (๊ธฐ๋ณธ ๋ ์ด์์ ๋ณ๋ ์ ๊ฑฐ) | ๋น ๋ฅธ ๋ธ๋ผ์ฐ์ ์ผ๊ด์ฑ ํ๋ณด |
| Normalize.css | ๋ธ๋ผ์ฐ์ ๊ธฐ๋ณธ ์คํ์ผ์ ํ์คํ | ๋์ (์๋๋ ์คํ์ผ๋ง ์ ์ง) | ๋ ๋๋ง ์์ ์ฑ ๋ฐ ๋ก๋ฉ ์๋ ์ต์ ํ |
| Custom Reset | ํ๋ก์ ํธ์ ํ์ํ ์์๋ง ์ด๊ธฐํ | ์ต์ (์ฝ๋ ๊ฒฝ๋ํ) | ํ์ด์ง ๋ก๋ฉ ์๋ ํฅ์์ ์ง์ ๊ธฐ์ฌ |
CSS ์ด๊ธฐํ ์์ (Universal Reset ๊ธฐ๋ฐ)
๋ค์ ์ฝ๋๋ ๊ฐ์ฅ ๊ด๋ฒ์ํ๊ฒ ์ฌ์ฉ๋๋ Universal Reset ๋ฐฉ์์ ์ด๊ธฐํ ์์์ ๋๋ค. ์ด ์ฝ๋๋ฅผ ์์ฑํด์ ๊ธฐ์กด CSS๋ฅผ ์ ์ฉํ๊ธฐ ์ ์ ๋จผ์ ์ ์ฉ์ํค๋ฉด ๋ฉ๋๋ค. ์ฃผ๋ก `head` ๋ถ๋ถ์ ๊ธฐ์กด CSS ์์๋ณด๋ค ๋จผ์ ๋ก๋ฉ๋๊ฒ ๋ฐฐ์นํด์ฃผ์๋ฉด CLS ์ ์๋ฅผ ํจ๊ณผ์ ์ผ๋ก ๊ด๋ฆฌํ ์ ์์ต๋๋ค.
/* ๋ชจ๋ ์์์ ๊ธฐ๋ณธ ์ฌ๋ฐฑ๊ณผ ํจ๋ฉ์ ์ ๊ฑฐ */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
line-height: 1;
box-sizing: border-box;
}
/* HTML5 ์์๋ฅผ ๋ธ๋ก ์์๋ก ์ค์ */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block;
}
/* ๋ณธ๋ฌธ์ ๊ธฐ๋ณธ line-height์ ํฐํธ ์ค์ */
body {
line-height: 1;
font-family: sans-serif;
}
/* ๋ฆฌ์คํธ ์คํ์ผ ์ ๊ฑฐ */
ol, ul {
list-style: none;
}
/* ์ธ์ฉ๊ตฌ์ ๊ธฐ๋ณธ ์คํ์ผ ์ ๊ฑฐ */
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
/* ํ
์ด๋ธ์ ๊ธฐ๋ณธ ์คํ์ผ ์ ๊ฑฐ */
table {
border-collapse: collapse;
border-spacing: 0;
}
์ด๋ฌํ CSS ์ด๊ธฐํ๋ ๊ฒ์์์ง ํ๊ฐ์์ ์ค์ํ๊ฒ ๋ค๋ฃจ๋ ์๊ฐ์ ์์ ์ฑ์ ํ๋ณดํ๋ ์ฒซ๊ฑธ์์ ๋๋ค.

Q1. CSS ์ด๊ธฐํ๊ฐ CLS ์ ์ ๊ฐ์ ์ ์ง์ ์ ์ธ ์ํฅ์ ๋ฏธ์น๋์?
A. ๋ค, ์ง์ ์ ์ธ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. CSS ์ด๊ธฐํ๋ ๋ธ๋ผ์ฐ์ ๊ธฐ๋ณธ ์คํ์ผ๋ก ์ธํด ๋ฐ์ํ ์ ์๋ ์๋์น ์์ ๋ง์ง์ด๋ ํจ๋ฉ์ ์ ๊ฑฐํ์ฌ ๋ ์ด์์ ๋ณ๋(Layout Shift)์ ๊ฐ๋ฅ์ฑ์ ์ต์ํํฉ๋๋ค. ์ด๋ ํ์ด์ง ๋ก๋ฉ ์ค ์์๋ค์ ์์น๊ฐ ๋ถ์์ ํ๊ฒ ๋ฐ๋๋ ํ์์ ๋ง์ CLS ์ ์ ๊ฐ์ ์ ๊ฒฐ์ ์ ์ผ๋ก ๊ธฐ์ฌํฉ๋๋ค.
Q2. CSS ์ด๊ธฐํ๊ฐ ์น์ฌ์ดํธ ๋ก๋ฉ ์๋ ํฅ์์๋ ๋์์ด ๋๋์?
A. ๊ฐ์ ์ ์ผ๋ก ๋์์ด ๋ฉ๋๋ค. ์ด๊ธฐํ ์ฝ๋๊ฐ ์ถ๊ฐ๋๋ ๋งํผ ์ฝ๋ ์์ ๋์ด๋์ง๋ง, ์ผ๊ด์ฑ ์๋ ์ด๊ธฐ ์คํ์ผ์ ๋ธ๋ผ์ฐ์ ๊ฐ ํ์ด์ง์ ์ต์ข ๋ ๋๋ง์ ์์ธกํ๊ธฐ ์ฝ๊ฒ ๋ง๋ค์ด ์คํ์ผ ์ถฉ๋์ ๋ฐฉ์งํฉ๋๋ค. ์ถฉ๋์ด ์ค์ด๋ค๋ฉด ๋ธ๋ผ์ฐ์ ์ ์คํ์ผ ๊ณ์ฐ ์๊ฐ์ด ๋จ์ถ๋์ด ์ ๋ฐ์ ์ธ ํ์ด์ง ๋ก๋ฉ ์๋ ๋ฐ ๋ ๋๋ง ์ฑ๋ฅ ํฅ์์ ๊ธฐ์ฌํฉ๋๋ค.
Q3. Normalize.css์ ์ผ๋ฐ์ ์ธ CSS Reset ์ค SEO ์ ๊ฒ ๊ด์ ์์ ๋ ๊ถ์ฅ๋๋ ๋ฐฉ์์ ๋ฌด์์ธ๊ฐ์?
A. SEO ์ ๊ฒ๊ณผ ์น ์ ๊ทผ์ฑ ๊ด์ ์์๋ Normalize.css๊ฐ ๋ ๊ถ์ฅ๋ฉ๋๋ค. Normalize.css๋ ๋ชจ๋ ์คํ์ผ์ 0์ผ๋ก ๋ง๋๋ ๋์ , ๋ธ๋ผ์ฐ์ ๊ฐ์ ์ฐจ์ด๋ง ํ์คํํ์ฌ HTML ์์์ ์๋ฏธ๋ก ์ ์คํ์ผ์ ๊ธฐ๋ณธ ์คํ์ผ)์ ๋ณด์กดํฉ๋๋ค. ์ด๋ ์น ์ ๊ทผ์ฑ์ ์ ์งํ๋ฉด์ ๋ธ๋ผ์ฐ์ ์ผ๊ด์ฑ์ ํ๋ณดํ๋ SEO ์ต์ ํ๋ ๋ฐฉ๋ฒ์ ๋๋ค.