NAVER

one_kยท2022๋…„ 10์›” 9์ผ
0

ํฌํŠธํด๋ฆฌ์˜ค

๋ชฉ๋ก ๋ณด๊ธฐ
1/6
post-thumbnail

๐Ÿ›  NAVER ํด๋ก ์ฝ”๋”ฉ

  • ์‚ฌ์ดํŠธ๋ช… : ๋„ค์ด๋ฒ„
  • ์ œ์ž‘๊ธฐ๊ฐ„ : 22.10.07 ~ 22.10.08 (2์ผ ์†Œ์š”)
  • ์‚ฌ์šฉ์–ธ์–ด : html, css
  • ๋ถ„๋ฅ˜ : ์ ์‘ํ˜• PC, ํด๋ก ์ฝ”๋”ฉ

๐Ÿ“Œ Review!!

1. ์‹œ๋ฉ˜ํ‹ฑํƒœ๊ทธ๋ž€?

์‚ฌ์ดํŠธ์˜ ๊ตฌ์กฐ๋ฅผ ํŒŒ์•…ํ•˜๊ธฐ ์šฉ์ดํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๊ธฐ ์œ„ํ•ด ๋งŒ๋“ค์–ด์ง„ ํƒœ๊ทธ์ด๋‹ค.

โœ๏ธ ์‹œ๋ฉ˜ํ‹ฑํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ข‹์€์ 

  • SEO ์ตœ์ ํ™”์— ์œ ๋ฆฌ. (SEO: Search Engine Optimization)
    ๊ฒ€์ƒ‰ ์—”์ง„์ด ํƒœ๊ทธ์˜ ๋ชฉ์ ์— ๋ถ€ํ•ฉํ•˜๊ฒŒ ์„ค๊ณ„๋˜์–ด์žˆ๋Š” ๊ตฌ์กฐ์˜ ์‚ฌ์ดํŠธ์—์„œ ๋”์šฑ ๋นจ๋ฆฌ ํšจ์œจ์ ์œผ๋กœ ์ •๋ณด๋ฅผ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์–ด ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ์˜ ๋…ธ์ถœ์— ์œ ๋ฆฌํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค€๋‹ค.

  • ์›น ์ ‘๊ทผ์„ฑ์— ํšจ์œจ์ 
    ์ผ๋ฐ˜์ ์ธ ๋ธŒ๋ผ์šฐ์ €์—์„œ๋Š” ์ฐจ์ด๊ฐ€ ์—†์ง€๋งŒ ์Šคํฌ๋ฆฐ๋ฆฌ๋”(์‹œ๊ฐ์žฅ์• ์ธ์„ ์œ„ํ•œ ์›น ์„œํ•‘ ํ”„๋กœ๊ทธ๋žจ)๊ณผ ๊ฐ™์€ ํ™˜๊ฒฝ์—์„œ๋Š”
    ์›น ์ ‘๊ทผ์„ฑ๊ณผ ์‚ฌ์šฉ์„ฑ์„ ํ–ฅ์ƒ์‹œ์ผœ์ค€๋‹ค.

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

โœ๏ธ ์‹œ๋ฉ˜ํ‹ฑํƒœ๊ทธ์˜ ์ข…๋ฅ˜

  • <header> : ๋จธ๋ฆฌ๊ธ€, ์ œ๋ชฉ, ํ—ค๋”
  • <nav> : ๋„ค์ด๊ฒŒ์ด์…˜, ๋ชฉ์ฐจ, ๋ฆฌ์ŠคํŠธ ๋“ฑ ๋‹ค๋ฅธ ํŽ˜์ด์ง€๋กœ์˜ ์ด๋™์„ ์œ„ํ•œ ๋งํฌ ๊ณต๊ฐ„์„ ์œ„์ฃผ๋กœ ํ‘œํ˜„
  • <main> : ์ด๋ฆ„์ฒ˜๋Ÿผ ๋ฌธ์„œ <body>์˜ ์ค‘์‹ฌ ์ฃผ์ œ, ์ฃผ์š” ๋‚ด์šฉ ๋˜๋Š” ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ์ค‘์‹ฌ ๊ธฐ๋Šฅ๊ณผ ์ง์ ‘ ๊ด€๋ จ๋˜์–ด๋‚˜ ํ™•์žฅ๋˜๋Š” ์ฝ˜ํ…์ธ ๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค.
  • <aside> : ์ขŒ์ธก๊ณผ ์šฐ์ธก ์‚ฌ์ด๋“œ ์œ„์น˜์˜ ๊ณต๊ฐ„์„ ์˜๋ฏธํ•˜๋ฉฐ, ๋ณธ๋ฌธ ์™ธ์— ๋ถ€์ˆ˜์ ์ธ ๋‚ด์šฉ์„ ์ฃผ๋กœ ํ‘œํ˜„
  • <section> : ์ฃผ์ œ, ์นดํ…Œ๊ณ ๋ฆฌ ๋ณ„๋กœ ์„น์…˜์„ ๊ตฌ๋ถ„ํ•˜๋Š” ์šฉ๋„์˜ ํƒœ๊ทธ๋กœ ์ฃผ๋กœ ์‚ฌ์šฉํ•˜๋ฉฐ, ๊ฐ™์€ ํ…Œ๋งˆ๋ฅผ ๊ฐ€์ง„ ์—ฌ๋Ÿฌ๊ฐœ์˜ ์ฝ˜ํ…์ธ ์˜ ๊ทธ๋ฃนํ™”
  • <article> : ๊ธฐ์‚ฌ, ๋ธ”๋กœ๊ทธ ๋“ฑ ํ…์ŠคํŠธ ์œ„์ฃผ์˜ ํŽ˜์ด์ง€๋ฅผ ๊ตฌ์„ฑํ• ๋•Œ ์ฃผ๋กœ ์‚ฌ์šฉ
  • <footer> : ๋ฐ”๋‹ฅ๊ธ€, ๋ฌธ์„œ ํ•˜๋‹จ์— ๋“ค์–ด๊ฐ€๋Š” ์ •๋ณด ๊ตฌ๋ถ„ ๊ณต๊ฐ„์„ ํ‘œํ˜„ํ•˜๋Š” ํƒœ๊ทธ

2. ํด๋ž˜์Šค๋ช… ์ฃผ๋Š”๋ฐฉ๋ฒ•?

โœ๏ธ ์˜๋ฏธ์—†์ด ์˜์—ญ์„ ๊ตฌ์„ฑํ•˜๊ณ ์‹ถ์„๋•

  • group-flex
  • column-left, column-right
  • col-left ,col-right
  • row-top , row-bottom

โœ๏ธ ์˜๋ฏธ์žˆ๊ฒŒ ์˜์—ญ์„ ๊ตฌ์„ฑํ• ๋•

  • section-event โ€” ์„น์…˜
  • group
  • event-area โ€” ์˜์—ญ์žก์•„์ค„๋•Œ(์„น์…˜๊ธ‰์ด์•„๋‹ˆ๋ผ๋ฉด area๋ถ€ํ„ฐ ์‹œ์ž‘)
  • event-wrap โ€” ์ž‘์€๋‹จ์œ„
  • event-box โ€” ๋” ์ž‘์€๋‹จ์œ„

โœ๏ธ ๋ฆฌ์ŠคํŠธ ํด๋ž˜์Šค ์ž‘์„ฑ

  • ul โ†’ event-list
  • li โ†’ event-item

โœ๏ธ aํƒœ๊ทธ์— ํด๋ž˜์Šค ์ค„๋• ๋ชฉ์ ์— ๋งž๊ฒŒ

  • link-๋ชฉ์  โ†’ ๋งํฌ์ด๋™
  • btn-๋”๋ณด๊ธฐ โ†’ ๋งํฌ์ด๋™(x) ์Šคํฌ๋ฆฝํŠธ์ž‘๋™

3. WAI-ARIA ๋ž€?

๋งˆ์šฐ์Šค์™€ ๊ฐ™์€ ํฌ์ธํŒ… ์žฅ๋น„๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ํž˜๋“ , ์Šคํฌ๋ฆฐ ๋ฆฌ๋”๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ์šฉ์ž๋“ค์—๊ฒŒ ํŽ˜์ด์ง€์˜ ๋‚ด์šฉ๊ณผ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ฐ”๋€Œ๋Š” ์˜์—ญ์— ์—ญํ• , ์†์„ฑ, ์ƒํƒœ ์ •๋ณด๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ํŽ˜์ด์ง€์— ์ ‘๊ทผ์„ฑ์„ ๋†’์—ฌ ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž๋“ค์—๊ฒŒ ์›ํ™œํ•œ ํŽ˜์ด์ง€ ์ด์šฉ์„ ๋„์™€์ค€๋‹ค.

์˜ˆ๋ฅผ ๋“ค๋ฉด,

<li tabindex="0" class="checkbox" checked>
  Receive promotional offers
</li>

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

์ด๋•Œ ์Šคํฌ๋ฆฐ๋ฆฌ๋” ์‚ฌ์šฉ์ž๋“ค์„ ์œ„ํ•œ ๋ฐฉ๋ฒ•์ด WAI-ARIA๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

<li tabindex="0" class="checkbox" role="checkbox" checked aria-checked="true">
  Receive promotional offers
</li>

role, aria-checked ARIA ์†์„ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ํ•ด๋‹น ์˜์—ญ์ด ์ฒดํฌ๋ฐ•์Šค์ธ์ง€, ์ฒดํฌ๊ฐ€ ๋˜์—ˆ๋Š”์ง€ ์•ˆ๋˜์—ˆ๋Š”์ง€ ๊นŒ์ง€ ๋ช…์‹œํ•  ์ˆ˜ ์žˆ๋‹ค.

โœ๏ธ ์‚ฌ์šฉ์‹œ ์ฃผ์˜์‚ฌํ•ญ

  • ์˜ฌ๋ฐ”๋ฅด์ง€ ๋ชปํ•œ ARIA๋ฅผ ์‚ฌ์šฉํ•  ๋ฐ”์—” ARIA๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ํŽธ์ด ์ข‹๋‹ค.
<div role="button">์ฃผ๋ฌธํ•˜๊ธฐ</div>

์œ„ ํƒœ๊ทธ๋Š” ํ‚ค๋ณด๋“œ๋กœ ์ ‘๊ทผ์„ ํ•  ๋•Œ ํ•ด๋‹น ์ปจํ…์ธ ๋ฅผ ์ ‘๊ทผํ•  ์ˆ˜ ์—†๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ๋ฒ„ํŠผ์˜ ์šฉ๋„์— ๋งž๊ฒŒ a, button ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•ด์•ผํ•œ๋‹ค.

  • ARIA๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์ „์— ํƒœ๊ทธ์˜ ์—ญํ• ๊ณผ ์˜๋ฏธ์— ๋งž๊ฒŒ ์ž‘์„ฑํ•œ๋‹ค.
<!-- X -->
<div role="button">๋ฒ„ํŠผ</div>

<!-- O -->
<button>๋ฒ„ํŠผ</button>
  • ํƒœ๊ทธ์˜ ๊ธฐ๋ณธ ์˜๋ฏธ๋ฅผ ์ค‘๋ณตํ•ด์„œ ์„ ์–ธํ•  ํ•„์š”๋Š” ์—†๋‹ค.
<!-- X (์ค‘๋ณต์„ ์–ธ) -->
<input type="checkbox" role="checkbox">
<button role="button">๋ฒ„ํŠผ</button>
<fieldset role="group">...</fieldset>
<ul role="list">...</ul>

<!-- O -->
<input type="checkbox">
<button>๋ฒ„ํŠผ</button>
<fieldset>...</fieldset>
<ul>...</ul>
  • ํŽ˜์ด์ง€์—์„œ ์‚ฌ์šฉํ•˜๋Š” ํƒœ๊ทธ์˜ ์—ญํ• ์ด ์ž˜๋ชป๋œ ARIA๋ฅผ ์„ ์–ธํ•˜๋ฉด ์•ˆ๋œ๋‹ค.
<!-- X -->
<button role="heading">๋ฒ„ํŠผ</button>

4. IR/IS ๊ธฐ๋ฒ•

โœ๏ธ IR(Image Replacement)๊ธฐ๋ฒ•

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

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

.blind

/*
๊ณตํ†ต, ์•ˆ๋˜๋Š”๊ฒƒ๋“ค
display: none; 
opacity: 0;
visibility: hidden;
width: 0;
height: 0;
font:0


position: absolute;
top: -9999px; ์„ฑ๋Šฅ์ €ํ•˜
left: -9999px; ์„ฑ๋Šฅ์ €ํ•˜

text-indent: -9999px; ์„ฑ๋Šฅ์ €ํ•˜

*/

.blind{
    position: absolute;   
    width: 1px;height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    margin: -1px;
}

โœ๏ธ IR(Image Replacement)๊ธฐ๋ฒ•

์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ด๋ฏธ์ง€ ํŒŒ์ผ๋“ค์„ ํ•˜๋‚˜์˜ ํŒŒ์ผ๋กœ ๋ณ‘ํ•ฉํ•ด์„œ ๋ฐฐ๊ฒฝ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ธฐ๋ฒ•์ด๋‹ค.

์žฅ์ 

์š”์ฒญํ•˜๋Š” ํšŸ์ˆ˜๊ฐ€ ๋งŽ์•„์ง€๊ฒŒ ๋˜๋ฉด ๊ทธ๋งŒํผ ๋กœ๋”ฉ ์†๋„๊ฐ€ ๋Š๋ ค์ง€๋Š”๋ฐ sprite์ฒ˜๋Ÿผ ํ•˜๋‚˜์˜ ํŒŒ์ผ๋กœ ๋งŒ๋“ค๊ฒŒ ๋˜๋ฉด
์š”์ฒญ์ด ์ค„์–ด๋“ค์–ด ์†๋„๊ฐ€ ๋นจ๋ผ์ง„๋‹ค.
๋งŽ์€ ์ด๋ฏธ์ง€ ํŒŒ์ผ์„ ๊ด€๋ฆฌํ•˜๋Š” ๋Œ€์‹  ํ•˜๋‚˜์˜ ์Šคํ”„๋ผ์ดํŠธ ์ด๋ฏธ์ง€ ํŒŒ์ผ๋งŒ ๊ด€๋ฆฌํ•˜๋ฉด ๋œ๋‹ค.

๋‹จ์ 

img ํƒœ๊ทธ๊ฐ€ ์•„๋‹Œ css์˜ background-image๋กœ ์ฒ˜๋ฆฌ ๋˜๊ธฐ ๋•Œ๋ฌธ์— alt์†์„ฑ ์‚ฌ์šฉ์ด ๋ถˆ๊ฐ€ํ•˜๋‹ค.
๊ทธ๋ž˜์„œ ์•„์ด์ฝ˜, ๋กœ๊ณ ์™€ ๊ฐ™์ด ์˜๋ฏธ์ƒ ํฌ๊ฒŒ ์ค‘์š”ํ•˜์ง€ ์•Š์€ ์ด๋ฏธ์ง€์˜ ๊ฒฝ์šฐ์— ์ด ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.
์ด๋ฏธ์ง€์˜ ๊ฐœ์ˆ˜๊ฐ€ ๋Š˜์–ด๋‚จ์— ๋”ฐ๋ผ ์ž์ฒด์˜ ์šฉ๋Ÿ‰์ด ์ปค์งˆ ์ˆ˜ ์žˆ๋‹ค.
์ˆ˜์ •์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ๊นŒ๋‹ค๋กญ๊ธฐ ๋•Œ๋ฌธ์—,
์ˆ˜์ •์ด ์•ˆ๋  ๊ฒƒ ๊ฐ™์€ ๋‹จ์ˆœํ•œ ์ด๋ชจํ‹ฐ์ฝ˜์ด๋‚˜ ๋กœ๊ณ ์˜ ๊ฒฝ์šฐ์— ์ž์ฃผ ์‚ฌ์šฉํ•œ๋‹ค.

0๊ฐœ์˜ ๋Œ“๊ธ€