๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
IT/tech-resources

๋ธ”๋กœ๊ทธ ์ž๋™ ์ƒ์„ฑ ๋ชฉ์ฐจ์˜ SEO ๋ฌธ์ œ์™€ ํ•ด๊ฒฐ ๋ฐฉ์•ˆ,๊ฒ€์ƒ‰ ๋…ธ์ถœ ๋ง‰๋Š” ๋ชฉ์ฐจ ๊ตฌ์กฐ

๋ธ”๋กœ๊ทธ ๋ชฉ์ฐจ, ์‚ฌ์šฉ์ž ์ ‘๊ทผ์„ฑ์€ ์ข‹์€๋ฐ SEO๋Š” ๊ดœ์ฐฎ์„๊นŒ?

๋ธ”๋กœ๊ทธ ์ฝ˜ํ…์ธ ์˜ ํ’ˆ์งˆ๊ณผ ์ ‘๊ทผ์„ฑ์„ ๋†’์ด๊ธฐ ์œ„ํ•œ ์—ฌ๋Ÿฌ ๋„๊ตฌ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋ฐ”๋กœ '๋ชฉ์ฐจ(Table of Contents)'์ž…๋‹ˆ๋‹ค. ํŠนํžˆ ๊ธ€์ด ๊ธธ๊ณ  ๊ตฌ์กฐ์ ์ธ ๊ฒฝ์šฐ, ๋ชฉ์ฐจ๋Š” ๋…์ž๊ฐ€ ๋‚ด์šฉ์„ ๋น ๋ฅด๊ฒŒ ํŒŒ์•…ํ•˜๊ณ  ์›ํ•˜๋Š” ๋ถ€๋ถ„์œผ๋กœ ์ด๋™ํ•˜๋Š” ๋ฐ ํฐ ๋„์›€์ด ๋˜๋ฉฐ ์ฝ˜ํ…์ธ ๋ฅผ ๋…ผ๋ฆฌ์ ์œผ๋กœ ์šด์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ž๋™์œผ๋กœ ์ƒ์„ฑ๋˜๋Š” ๋ชฉ์ฐจ ๊ธฐ๋Šฅ์ด ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋ฉด์„œ, SEO ์ธก๋ฉด์—์„œ ์˜๋„์น˜ ์•Š์€ ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚ค๋Š” ์‚ฌ๋ก€๋„ ๋ฐœ์ƒํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋ชฉ์ฐจ ๊ธฐ๋Šฅ์˜ ์–‘๋‚ ์˜ ๊ฒ€: SEO ์ตœ์ ํ™”์™€ CLS ๋ฆฌ์Šคํฌ ๊ด€๋ฆฌ

์ด๋ฒˆ ๊ธ€์—์„œ๋Š” ์ž๋™ ๋ชฉ์ฐจ์˜ ์žฅ์ ๊ณผ ํ•จ๊ป˜, ๊ทธ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” SEO์ƒ์˜ ๋ฌธ์ œ์ , ๊ทธ๋ฆฌ๊ณ  ๊ทธ ํ•ด๊ฒฐ์ฑ…๊นŒ์ง€ ์ž์„ธํžˆ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ชฉ์ฐจ ๊ธฐ๋Šฅ์˜ ์žฅ์ : ์‚ฌ์šฉ์ž ์ ‘๊ทผ์„ฑ ํ–ฅ์ƒ

๋ธ”๋กœ๊ทธ ๊ธ€์— ๋ชฉ์ฐจ๋ฅผ ํฌํ•จํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ด์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๊ธ€์˜ ๊ตฌ์กฐ๋ฅผ ํ•œ๋ˆˆ์— ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์Œ: ๊ธด ๊ธ€์ด๋ผ๋„ ์ฃผ์š” ๋‚ด์šฉ์„ ๋น ๋ฅด๊ฒŒ ํ™•์ธํ•˜๊ณ  ์ด๋™ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํƒ์ƒ‰์„ฑ ๊ฐ•ํ™”: ์‚ฌ์šฉ์ž๊ฐ€ ์›ํ•˜๋Š” ์ •๋ณด๋ฅผ ์‰ฝ๊ฒŒ ์ฐพ์„ ์ˆ˜ ์žˆ์–ด, ์ดํƒˆ๋ฅ ์„ ๋‚ฎ์ถ”๋Š” ๋ฐ ๊ธฐ์—ฌํ•ฉ๋‹ˆ๋‹ค.
  • ์ ‘๊ทผ์„ฑ ๊ฐœ์„ : ์‹œ๊ฐ์ ์ธ ๋‚ด๋น„๊ฒŒ์ด์…˜ ์—ญํ• ์„ ํ•˜๋ฉฐ, ์›น ์ ‘๊ทผ์„ฑ ์ธก๋ฉด์—์„œ๋„ ๊ธ์ •์ ์ธ ํšจ๊ณผ๋ฅผ ์ค๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ์ด์œ ๋กœ ๋งŽ์€ ๋ธ”๋กœ๊ฑฐ๋“ค์ด ๊ธ€ ์ƒ๋‹จ์— ๋ชฉ์ฐจ๋ฅผ ๋ฐฐ์น˜ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ์ด๋Š” ๋งค์šฐ ์ผ๋ฐ˜์ ์ธ ์ „๋žต์ž…๋‹ˆ๋‹ค.

์ž๋™ ๋ชฉ์ฐจ์˜ ํ•œ๊ณ„์™€ SEO ๋ฌธ์ œ

๋ฌธ์ œ๋Š” ์ž๋™ ์ƒ์„ฑ๋˜๋Š” ๋ชฉ์ฐจ๊ธฐ๋Šฅ์— ์žˆ์Šต๋‹ˆ๋‹ค.
์šด์˜์ž๊ฐ€ ์ˆ˜๋™์œผ๋กœ ์ž‘์„ฑํ•œ ๋ชฉ์ฐจ๋Š” ๋‚ด๋ถ€ ๋งํฌ ๊ตฌ์กฐ๋ฅผ ๋ช…ํ™•ํžˆ ๋“œ๋Ÿฌ๋‚ด๋ฉด์„œ ๊ฒ€์ƒ‰ ์—”์ง„์— ๊ธ์ •์ ์ธ ์‹ ํ˜ธ๋ฅผ ์ฃผ๋Š” ์š”์†Œ๋กœ ํ‰๊ฐ€๋ฉ๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ ์ž๋™ ์ƒ์„ฑ ๋ชฉ์ฐจ๋Š” ๋ธŒ๋ผ์šฐ์ € ๋ Œ๋”๋ง ์ดํ›„ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ†ตํ•ด ๋™์ ์œผ๋กœ ์ƒ์„ฑ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์•„, ์ฝ˜ํ…์ธ ์˜ ์‹œ๊ฐ์  ์•ˆ์ •์„ฑ์„ ํ•ด์น˜๋Š” CLS(Cumulative Layout Shift) ๋ฌธ์ œ๋ฅผ ์œ ๋ฐœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ, ๊ตฌ๊ธ€์€ 2023๋…„ ๋ง ์ดํ›„ ์ž๋™ ์ƒ์„ฑ๋œ ๋งํฌ๋‚˜ ๋ชฉ์ฐจ๋ฅผ ์ŠคํŒธ์„ฑ ์š”์†Œ๋กœ ํŒ๋‹จํ•˜๋Š” ๊ฒฝํ–ฅ์„ ๋ณด์ด๋ฉฐ, ๊ด€๋ จ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ฐ•ํ™”ํ•œ ๋ฐ” ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ๋•Œ๋ฌธ์— ์ € ์—ญ์‹œ ์ž๋™ ๋ชฉ์ฐจ ๊ธฐ๋Šฅ์„ ํ•œ๋™์•ˆ ์ค‘๋‹จํ–ˆ๋˜ ๊ฒฝํ—˜์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ž๋™ํ™” ์ƒ์„ฑ ๋ชฉ์ฐจ์˜ ๋ฌธ์ œ์ : CLS์™€ SEO ์ด์Šˆ

์ตœ๊ทผ ๋ช‡ ๋…„ ์‚ฌ์ด, ํ‹ฐ์Šคํ† ๋ฆฌ, ์›Œ๋“œํ”„๋ ˆ์Šค, Notion ๊ธฐ๋ฐ˜ ๋ธ”๋กœ๊ทธ ๋“ฑ์—์„œ๋Š” ๋ชฉ์ฐจ๊ฐ€ ์ž๋™์œผ๋กœ ์ƒ์„ฑ๋˜๊ฑฐ๋‚˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ†ตํ•ด ๋ Œ๋”๋ง๋˜๋Š” ๋ฐฉ์‹์ด ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด๋Ÿฌํ•œ ํด๋ผ์ด์–ธํŠธ ์‚ฌ์ด๋“œ ๊ธฐ๋ฐ˜์˜ ์ž๋™ ๋ชฉ์ฐจ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฌธ์ œ๋ฅผ ์œ ๋ฐœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

1. CLS ๋ฌธ์ œ (Cumulative Layout Shift)

์ž๋™ ์ƒ์„ฑ ๋ชฉ์ฐจ๋Š” ์ฝ˜ํ…์ธ ๊ฐ€ ์™„์ „ํžˆ ๋ Œ๋”๋ง๋œ ํ›„, ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ†ตํ•ด ๋’ค๋Šฆ๊ฒŒ ์‚ฝ์ž…๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด ํŽ˜์ด์ง€์˜ ๋ ˆ์ด์•„์›ƒ์ด ๊ฐ‘์ž‘์Šค๋Ÿฝ๊ฒŒ ๋ฐ€๋ฆฌ๊ฑฐ๋‚˜ ํ”๋“ค๋ฆฌ๋Š” CLS(Cumulative Layout Shift) ํ˜„์ƒ์ด ๋ฐœ์ƒํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
์ด๋Š” ์›น ํ•ต์‹ฌ ์ง€ํ‘œ(Core Web Vitals) ์ค‘ ํ•˜๋‚˜๋กœ, ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ์ €ํ•ดํ•˜๊ณ  SEO ํ‰๊ฐ€์— ๋ถ€์ •์ ์ธ ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

2. ๊ตฌ๊ธ€ ์ŠคํŒธ ์ฒ˜๋ฆฌ ๊ฐ•ํ™” ์ด์Šˆ

2024๋…„ 12์›”, ๊ตฌ๊ธ€์€ ์ฝ”์–ด ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์—…๋ฐ์ดํŠธ๋ฅผ ํ†ตํ•ด ์ž๋™ํ™”๋œ ๋‚ด๋ถ€ ๋งํฌ ๊ตฌ์กฐ์— ๋Œ€ํ•œ ํ‰๊ฐ€ ๊ธฐ์ค€์„ ๊ฐ•ํ™”ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ฃผ์š” ๋‚ด์šฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

  • ์ฝ˜ํ…์ธ  ํ’ˆ์งˆ์ด ๋‚ฎ์€ ์ž๋™ํ™”๋œ ๋งํฌ ์ƒ์„ฑ ํŒจํ„ด์„ ์ŠคํŒธ์œผ๋กœ ๋ถ„๋ฅ˜
  • ๋‚ด๋ถ€ ๋งํฌ ์ตœ์ ํ™”๊ฐ€ ์•„๋‹Œ, ์˜๋„์ ์ธ ๊ฒ€์ƒ‰ ์ˆœ์œ„ ์กฐ์ž‘ ์‹œ๋„๋กœ ์ธ์‹๋  ๊ฒฝ์šฐ ํŒจ๋„ํ‹ฐ ๋ถ€์—ฌ ๊ฐ€๋Šฅ

์ฆ‰, ์ž๋™ํ™”๋œ ๋ชฉ์ฐจ๊ฐ€ ๋™์ผํ•œ ํฌ๋งท์˜ ๋งํฌ๋ฅผ ๋ฐ˜๋ณต์ ์œผ๋กœ ๋‚˜์—ดํ•˜๊ณ , ์„ค๋ช… ์—†์ด ์ œ๋ชฉ๋งŒ ์‚ฝ์ž…๋œ ํ˜•ํƒœ๋ผ๋ฉด, ๊ตฌ๊ธ€ ๊ฒ€์ƒ‰์—”์ง„์—์„œ ์ŠคํŒธ ๋งํฌ ์ง‘ํ•ฉ์œผ๋กœ ์ธ์‹๋  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์•„์กŒ์Šต๋‹ˆ๋‹ค.

3. ๋ถˆํ•„์š”ํ•œ ์ฝ˜ํ…์ธ  ์ฆ๊ฐ€์™€ ์ฝ˜ํ…์ธ  ์ ‘๊ทผ์„ฑ ์ €ํ•˜

๋ชฉ์ฐจ๋Š” ์ •๋ณด ํƒ์ƒ‰์— ์œ ์šฉํ•œ ๋‚ด๋น„๊ฒŒ์ด์…˜ ๋„๊ตฌ์ด์ง€๋งŒ, ๋ฌด์กฐ๊ฑด ๊ธ€์˜ ์ƒ๋‹จ์— ๋ฐฐ์น˜๋  ๊ฒฝ์šฐ ์˜คํžˆ๋ ค ๋ฉ”์ธ ์ฝ˜ํ…์ธ ์˜ ์ ‘๊ทผ์„ ๋ฐฉํ•ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ ์ž๋™ ์ƒ์„ฑ ๋ชฉ์ฐจ๊ฐ€ ๊ธธ๊ณ  ๊ณผ๋„ํ•˜๊ฒŒ ์ƒ์„ธํ•œ ๊ฒฝ์šฐ, ์‚ฌ์šฉ์ž๋Š” ํ•ต์‹ฌ ์ฝ˜ํ…์ธ ์— ๋„๋‹ฌํ•˜๊ธฐ๊นŒ์ง€ ๋” ๋งŽ์€ ์Šคํฌ๋กค๊ณผ ์‹œ๊ฐ„์ด ์†Œ์š”๋˜๋ฉฐ, ์ด๋กœ ์ธํ•ด ์ดํƒˆ๋ฅ  ์ฆ๊ฐ€๋‚˜ ์‚ฌ์šฉ์ž ๋ถˆํŽธ์œผ๋กœ ์ด์–ด์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ ‡๋‹ค๋ฉด ๋ชฉ์ฐจ๋ฅผ ํฌ๊ธฐํ•ด์•ผ ํ• ๊นŒ?

๋ชฉ์ฐจ๊ฐ€ ์‚ฌ์šฉ์ž์—๊ฒŒ ์œ ์ตํ•œ ๋„๊ตฌ์ธ ๊ฒƒ์€ ๋ถ„๋ช…ํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ SEO์™€ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜(UX)์„ ๋ชจ๋‘ ๊ณ ๋ คํ•œ๋‹ค๋ฉด, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ „๋žต์  ํ™œ์šฉ๋ฒ•์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

๋Œ€์•ˆ 1: ์‚ฌ์ด๋“œ๋ฐ” ํŒ์—… ๋ชฉ์ฐจ

์‚ฌ์šฉ์ž์—๊ฒŒ ์„ ํƒ๊ตฐ์„ ์ฃผ์ž!

์ฝ˜ํ…์ธ  ์ƒ๋‹จ์— ๊ณ ์ •๋œ ํ˜•ํƒœ๊ฐ€ ์•„๋‹Œ, ์‚ฌ์ด๋“œ๋ฐ” ํŒ์—…ํ˜• ๋ชฉ์ฐจ UI๋กœ ์ „ํ™˜ํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ์ž๋™ ์ƒ์„ฑ ๋ชฉ์ฐจ์˜ CLS ๋ฌธ์ œ์™€ SEO ํŒจ๋„ํ‹ฐ ์šฐ๋ ค๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•œ ์‹ค์šฉ์ ์ธ ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜๋Š” ์‚ฌ์ด๋“œ๋ฐ” ํŒ์—…ํ˜• ๋ชฉ์ฐจ UI๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ์ด ๋ฐฉ๋ฒ•์€ ๋ชฉ์ฐจ๋ฅผ ๊ธ€ ์ƒ๋‹จ์— ๊ณ ์ •ํ•˜์—ฌ CLS(Cumulative Layout Shift)๋ฅผ ์œ ๋ฐœํ•˜๋Š” ๋ฐฉ์‹์ด ์•„๋‹ˆ๋ผ, ์‚ฌ์šฉ์ž๊ฐ€ ํด๋ฆญํ•  ๋•Œ๋งŒ ๋ชฉ์ฐจ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๊ตฌ์กฐ๋กœ UX์™€ SEO๋ฅผ ๋ชจ๋‘ ๊ณ ๋ คํ•œ ํ˜•ํƒœ์ž…๋‹ˆ๋‹ค.

  • ์ฝ˜ํ…์ธ  ๋กœ๋”ฉ์ด ์™„๋ฃŒ๋œ ํ›„ ํŒ์—… ๋ฒ„ํŠผ ํด๋ฆญ ์‹œ์—๋งŒ ๋ชฉ์ฐจ๊ฐ€ ํ‘œ์‹œ๋˜๋„๋ก ์ฒ˜๋ฆฌ
  • ์ดˆ๊ธฐ CLS ๋ฌธ์ œ๋ฅผ ๋ฐฉ์ง€ํ•˜๊ณ , ์ฝ˜ํ…์ธ  ํ๋ฆ„์„ ๋ฐฉํ•ดํ•˜์ง€ ์•Š์Œ
  • ๊ตฌ๊ธ€ ํฌ๋กค๋Ÿฌ๊ฐ€ ๋ชฉ์ฐจ ๋‚ด๋ถ€์˜ ์ž๋™ ๋งํฌ๋ฅผ ํฌ๋กค๋งํ•˜์ง€ ์•Š๋„๋ก <div style="display:none">, aria-hidden="true", ๋˜๋Š” robots noindex ์†์„ฑ ๋“ฑ์„ ์กฐํ•ฉํ•˜์—ฌ ์ฒ˜๋ฆฌ ๊ฐ€๋Šฅ

๋ชฉ์ฐจ ํ† ๊ธ€ ๋ฒ„ํŠผ

๋ณธ๋ฌธ ์˜์—ญ ๋ฐ”๊นฅ, ์‚ฌ์ด๋“œ๋ฐ”๋‚˜ ์ƒ๋‹จ ๊ทผ์ฒ˜๊ฐ€ ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ด๋ฉฐ, ๋‹ค์Œ ์ค‘ ํ•œ ๊ณณ์— ๋„ฃ์œผ๋ฉด ์ข‹์Šต๋‹ˆ๋‹ค:
<!-- ๋ชฉ์ฐจ ํ† ๊ธ€ ๋ฒ„ํŠผ -->
<div id="toc-toggle">๋ชฉ์ฐจ</div>

<!-- ๋ชฉ์ฐจ ์˜์—ญ -->
<div id="toc-popup">
  <div id="toc">
    <ul></ul>
  </div>
</div>

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ ์„ค์น˜ ์œ„์น˜

์ผ๋ฐ˜์ ์œผ๋กœ </body> ํƒœ๊ทธ ๋ฐ”๋กœ ์œ„์— ๋„ฃ์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ํŽ˜์ด์ง€๊ฐ€ ๋‹ค ๋กœ๋“œ๋œ ๋’ค์— ์‹คํ–‰๋˜๋ฏ€๋กœ ์•ˆ์ •์ ์ž…๋‹ˆ๋‹ค.
<script>
document.addEventListener("DOMContentLoaded", () => {
  const tocList = document.querySelector("#toc ul");
  const popup = document.getElementById("toc-popup");
  const toggle = document.getElementById("toc-toggle");
  const headings = document.querySelectorAll(".tt_article_useless_p_margin.contents_style h2, .tt_article_useless_p_margin.contents_style h3, .tt_article_useless_p_margin.contents_style h4");

  if (!headings.length) {
    popup.remove();
    return;
  }

  headings.forEach((heading, i) => {
    if (!heading.id) heading.id = "heading-" + i;
    const li = document.createElement("li");
    if (heading.tagName === "H2") li.classList.add("h2-item");
    else if (heading.tagName === "H3") li.classList.add("h3-item");
    else if (heading.tagName === "H4") li.classList.add("h4-item");
    const a = document.createElement("a");
    a.href = "#" + heading.id;
    a.textContent = heading.textContent;
    li.appendChild(a);
    tocList.appendChild(li);
  });

  let userToggled = false;

  function updateDisplay() {
    if (!userToggled) {
      popup.style.display = window.innerWidth >= 1500 ? "block" : "none";
    }
  }

  updateDisplay();

  toggle.addEventListener("click", () => {
    popup.style.display = popup.style.display === "block" ? "none" : "block";
    userToggled = true;
  });

  window.addEventListener("resize", updateDisplay);
});
</script>
์ด ๋ชฉ์ฐจ๋Š” ์ดˆ๊ธฐ์—๋Š” ์ˆจ๊ฒจ์ ธ ์žˆ์œผ๋ฉฐ, ๋ฐ์Šคํฌํ†ฑ ํ™”๋ฉด์—์„œ๋งŒ ์ž๋™ ํ‘œ์‹œ๋˜๋„๋ก ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
๋ชจ๋ฐ”์ผ ์‚ฌ์šฉ์ž๋‚˜ ์ž‘์€ ํ™”๋ฉด์—์„œ๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ์•ผ๋งŒ ๋ณด์ด๋ฉฐ, ๊ตฌ๊ธ€ ํฌ๋กค๋Ÿฌ์— ๋…ธ์ถœ๋˜์ง€ ์•Š๋„๋ก CSS๋‚˜ ์†์„ฑ์„ ์ถ”๊ฐ€ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
๋˜ํ•œ robots ๋ฉ”ํƒ€ํƒœ๊ทธ๋กœ ๋ชฉ์ฐจ๋ฅผ ํฌํ•จํ•œ ํŠน์ • ๋ธ”๋ก์˜ ์ธ๋ฑ์‹ฑ์„ ์ œํ•œํ•˜๋ ค๋ฉด <meta name="robots" content="noindex"> ๋˜๋Š” <div style="display:none"> ์•ˆ์— ๋ฐฐ์น˜ํ•˜๋Š” ๋ฐฉ์‹๋„ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

๋ชฉ์ฐจ CSS

#toc-toggle {
    margin-top: 20px;
    background-color: #1f0101;
    color: #fff;
    padding: 10px 14px;
    border-radius: 6px;
    font-size: 16px;
    cursor: pointer;
    z-index: 9999;
    box-shadow: 0 4px 8px rgba(0,0,0,0.5);
    transition: background-color 0.3s;
    text-align: center;
}

#toc-toggle:hover {
    background-color: #444;
}

#toc-popup::before {
    content: "๋ชฉ์ฐจ";
    display: block;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    margin-bottom: 10px;
    border-bottom: 1px solid #444;
    padding-bottom: 5px;
    padding: 10px;
}

#toc-popup {
    position: fixed;
    top: 300px;
    right: 10px;
    width: 280px;
    max-height: 70vh;
    overflow-y: auto;
    background-color: #1e1e1e;
    border-radius: 8px;
    box-shadow: 0 5px 20px rgba(0,0,0,0.4);
    z-index: 1000;
    display: none;
    padding: 15px;
    font-family: 'SF Mono', 'Consolas', monospace;
    border: 1px solid #eaeaea63;
}

#toc {
    position: relative;
}

#toc ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

#toc ul ul {
    padding-left: 20px;
    margin-left: 8px;
    border-left: 1px solid rgba(255,255,255,0.15);
}

#toc li {
    position: relative;
    margin-bottom: 4px;
    line-height: 1.4;
}

#toc li a {
    text-decoration: none;
    color: #eaeaeac7;
    font-size: 0.9rem;
    display: block;
    padding: 6px 8px;
    border-radius: 4px;
    transition: all 0.2s;
    position: relative;
    white-space: normal;
}

#toc li.h2-item > a {
    color: #f0f0f0;
    font-weight: 500;
    padding-left: 24px;
}

#toc li.h2-item > a::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 1px;
    background-color: rgba(255, 255, 255, 0.4);
}

#toc li.h3-item > a {
    padding-left: 44px;
    font-size: 0.88rem;
}

#toc li.h3-item > a:before {
    content: "โ”œโ”€";
    position: absolute;
    left: 24px;
    color: rgba(255,255,255,0.4);
}

#toc li.h4-item > a {
    padding-left: 64px;
    font-size: 0.85rem;
    color: #b0b0b0;
}

#toc li.h4-item > a:before {
    content: "โ””โ”€";
    position: absolute;
    left: 44px;
    color: rgba(255,255,255,0.3);
}

#toc li:last-child > a:before {
    content: "โ””โ”€";
}

#toc li a:hover {
    background: rgba(100, 100, 255, 0.1);
    color: #fff;
}

#toc li a.active {
    color: #8073df;
    font-weight: 500;
    background: rgb(148 54 111 / 10%);
}

#toc-popup li a.active::after {
    content: "";
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #d0a702;
}

#toc-popup::-webkit-scrollbar {
    width: 6px;
}

#toc-popup::-webkit-scrollbar-thumb {
    background: rgba(108, 92, 231, 0.4);
    border-radius: 3px;
}

๋Œ€์•ˆ 2: ์‚ฌ์ด๋“œ ๋ Œ๋”๋ง ๋˜๋Š” ์ •์  ๋ชฉ์ฐจ

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ ๋™์ ์œผ๋กœ ๋ชฉ์ฐจ๋ฅผ ์‚ฝ์ž…ํ•˜๋Š” ๋Œ€์‹ , ์ฒ˜์Œ๋ถ€ํ„ฐ HTML ๋ฌธ์„œ ๋‚ด์— ๋ชฉ์ฐจ๋ฅผ ์ง์ ‘ ํฌํ•จํ•˜๋Š” ๋ฐฉ์‹์ด ๊ฐ€์žฅ SEO ์นœํ™”์ ์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ์ •์  ๋ชฉ์ฐจ ํ˜น์€ ์„œ๋ฒ„์‚ฌ์ด๋“œ ๋ Œ๋”๋ง ๋ฐฉ์‹์˜ ๋ชฉ์ฐจ ์‚ฝ์ž…์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ€๋Šฅํ•˜๋‹ค๋ฉด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ†ตํ•œ ๋ Œ๋”๋ง ๋Œ€์‹ , HTML์— ์ง์ ‘ ๋ชฉ์ฐจ๋ฅผ ์‚ฝ์ž…ํ•˜๋Š” ๋ฐฉ์‹์ด ๋” ๋ฐ”๋žŒ์งํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ด์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค:

  • ํŽ˜์ด์ง€ ๋กœ๋”ฉ ์‹œ ์ด๋ฏธ DOM์— ๋ชฉ์ฐจ๊ฐ€ ์กด์žฌํ•˜์—ฌ CLS ์—†์Œ
  • ๊ตฌ๊ธ€์ด ๋ชฉ์ฐจ์˜ ๋งํฌ๋ฅผ ์ฝ˜ํ…์ธ  ์ผ๋ถ€๋กœ ์ธ์‹ํ•˜๋ฏ€๋กœ ์˜คํžˆ๋ ค ๋‚ด๋ถ€ ๋งํฌ ์ตœ์ ํ™”์— ๋„์›€

๋‹จ์ 

  • ์ˆ˜๋™์œผ๋กœ ๊ด€๋ฆฌํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ž๋™ํ™”๊ฐ€ ์–ด๋ ต๊ณ , ๋งค๋ฒˆ ๋ชฉ์ฐจ๋ฅผ ์ง์ ‘ ์ž‘์„ฑํ•˜๊ฑฐ๋‚˜ ํ…œํ”Œ๋ฆฟํ™”ํ•ด์•ผ ํ•จ
  • ํ‹ฐ์Šคํ† ๋ฆฌ์™€ ๊ฐ™์€ CMS์—์„œ๋Š” ํŽธ์ง‘์˜ ์ž์œ ๋„๊ฐ€ ์ œํ•œ๋˜์–ด HTML ์ง์ ‘ ์ˆ˜์ •์ด ์–ด๋ ค์šธ ์ˆ˜ ์žˆ์Œ

ํ‹ฐ์Šคํ† ๋ฆฌ ๋ธ”๋กœ๊ทธ์ฒ˜๋Ÿผ HTML ๊ตฌ์กฐ ํŽธ์ง‘์ด ์ œํ•œ๋œ ํ”Œ๋žซํผ์—์„œ๋Š” ์–ด๋ ค์šธ ์ˆ˜ ์žˆ์ง€๋งŒ, ์›Œ๋“œํ”„๋ ˆ์Šค๋‚˜ ์ž์ฒด ๊ตฌ์ถ• ๋ธ”๋กœ๊ทธ๋ผ๋ฉด ์ด ๋ฐฉ์‹์„ ์ ๊ทน ์ถ”์ฒœํ•ฉ๋‹ˆ๋‹ค.

์ž๋™ํ™” ๋ชฉ์ฐจ๋Š” '์ ‘๊ทผ์„ฑ'๊ณผ 'SEO' ์‚ฌ์ด์—์„œ ๊ท ํ˜•

์ž๋™ํ™” ๋ชฉ์ฐจ๋Š” ๋ถ„๋ช… ์‚ฌ์šฉ์„ฑ์„ ๋†’์ด๋Š” ์ข‹์€ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ฌด๋ถ„๋ณ„ํ•œ ์ ์šฉ์€ SEO ์„ฑ๊ณผ๋ฅผ ํ•ด์น˜๊ณ , ๊ตฌ๊ธ€์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ์˜ํ•ด ๋ถˆ์ด์ต์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ชฉ์ฐจ ๊ธฐ๋Šฅ์„ ์œ ์ง€ํ•˜๋ฉด์„œ๋„ SEO ์นœํ™”์ ์œผ๋กœ ๊ตฌ์„ฑํ•˜๋ ค๋ฉด ๋‹ค์Œ ์‚ฌํ•ญ์„ ์ง€์ผœ์•ผ ํ•ฉ๋‹ˆ๋‹ค:

  • ๋ชฉ์ฐจ๋Š” ๊ฐ€๋Šฅํ•˜๋ฉด ์ดˆ๊ธฐ ๋กœ๋”ฉ์—์„œ DOM์— ํฌํ•จ๋˜๋„๋ก ์ฒ˜๋ฆฌ
  • ์ž๋™ ์ƒ์„ฑ๋œ ๋ชฉ์ฐจ๋Š” ์‚ฌ์ด๋“œ๋ฐ” ํŒ์—… ํ˜•ํƒœ ๋˜๋Š” ๋น„๋…ธ์ถœ ์˜์—ญ์œผ๋กœ ์ฒ˜๋ฆฌ
  • ๋ชฉ์ฐจ ๋‚ด๋ถ€ ๋งํฌ๋Š” ์ฝ˜ํ…์ธ ์™€ ๊ด€๋ จ๋œ ํ‚ค์›Œ๋“œ ๊ธฐ๋ฐ˜ ๊ตฌ์กฐ๋กœ ๊ตฌ์„ฑ๋˜์–ด์•ผ ํ•จ

'IT > tech-resources' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

Gemini CLI ์‚ฌ์šฉ์„ ์œ„ํ•œ Google API ํ‚ค ๋ฌด๋ฃŒ ๋ฐœ๊ธ‰ ๋ฐฉ๋ฒ• (์ดˆ๋ณด์ž๋„ ์‰ฝ๊ฒŒ ๋”ฐ๋ผ ํ•˜๊ธฐ)  (2) 2025.06.29
์นดํ…Œ๊ณ ๋ฆฌ๋ณ„ CSS ์Šคํƒ€์ผ ์ ์šฉํ•˜๊ธฐ! ๋ธ”๋กœ๊ทธ ๋””์ž์ธ์„ ์œ„ํ•œ CSS ๋‹คํฌ ๋ชจ๋“œ ์ƒ˜ํ”Œ 3๊ฐ€์ง€  (1) 2025.06.28
๋ธ”๋กœ๊ทธ ์ด๋ฏธ์ง€ ์„ ๋ช…๋„ ์ตœ์ ํ™”, ํ‹ฐ์Šคํ† ๋ฆฌ ์šด์˜์ž๋ฅผ ์œ„ํ•œ ์ด๋ฏธ์ง€ ์ปค์Šคํ…€ ๋ฆฌ์‚ฌ์ด์ง• ๋ฐฉ๋ฒ•  (2) 2025.06.25
๋ธ”๋กœ๊ทธ์— ๊ฐ์„ฑ์„ ๋”ํ•˜๋‹ค โ€“ Vocaroo ์ž๋™ ์žฌ์ƒ ์Œ์•… ์‚ฝ์ž…ํ•˜๋Š” ๋ฐฉ๋ฒ•  (1) 2025.06.24
๋ธ”๋กœ๊ทธ ์นดํ…Œ๊ณ ๋ฆฌ ํŽ˜์ด์ง€ ์„ธ๋ จ๋œ ๋””์ž์ธ ๋ชจ์Œ: 4๊ฐ€์ง€ ์Šคํƒ€์ผ๊ณผ HTML ์ฝ”๋“œ ์˜ˆ์‹œ  (5) 2025.06.23
ํ‹ฐ์Šคํ† ๋ฆฌ ๊ธ€์“ฐ๊ธฐ ์—๋””ํ„ฐ ๊ฐ€๋กœํญ ์กฐ์ ˆ ๋ฐฉ๋ฒ• 3๊ฐ€์ง€์™€ ๊ฐ„๋‹จ ์—๋””ํ„ฐ ํ”„๋กœ๊ทธ๋žจ  (2) 2025.06.22
๋™์  ๋งํฌ ๋ฒ„ํŠผ,๋ธ”๋กœ๊ทธ ์นดํ…Œ๊ณ ๋ฆฌ๋ณ„ ๋งž์ถค ๋ฒ„ํŠผ ์ž๋™ ์ƒ์„ฑํ•˜๊ธฐ ,์ด์œ ๋ฒ„ํŠผ๋ชจ์Œ  (2) 2025.06.20