๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ปSTUDY/์›น์ ‘๊ทผ์„ฑ

์ ‘๊ทผ์„ฑ ์ฃผ์˜ํ•ด์•ผ ํ•  ์ 

jmjm 2025. 2. 13. 13:38

์›น์ ‘๊ทผ์„ฑ ํ”„๋กœ์ ํŠธ๋ฅผ ํ•˜๋ฉด์„œ ์ƒˆ๋กญ๊ฒŒ ์•Œ์•˜๋˜ ์ , ์˜์™ธ์˜€๋˜ ์ ์ด ๋งŽ์•˜๋‹ค.

์™œ ์ด๋ ‡๊ฒŒ ๊นŒ์ง€ ํ•ด์•ผ ํ• ๊นŒ ๋ผ๋Š” ์˜๊ตฌ์‹ฌ์ด ๋“ค์ˆ˜๋„ ์žˆ์ง€๋งŒ ์ง์ ‘ ๊ฒฝํ—˜ํ•ด๋ณด๋ฉด ์ดํ•ด์™€ ๋‚ฉ๋“์ด ๋˜๋Š” ์ ์ด ๋งŽ์•˜๋‹ค.

์ ‘๊ทผ์„ฑ์€ ํ”„๋กœ์ ํŠธ๋งˆ๋‹ค ๊ฒ€์ˆ˜๋ฐฉ๋ฒ•์ด ์กฐ๊ธˆ์”ฉ ๋‹ค๋ฅด๋‹ค๊ณ  ํ•˜๋˜๋ฐ ์ด ๊ธ€์„ ์ฝ๊ณ  '์ด๋Ÿฐ๊ฒŒ ์žˆ๊ณ  ์œ ์˜ํ•ด์•ผ ๊ฒ ๋‹ค' ๋ผ๋Š” ์ƒ๊ฐ์œผ๋กœ ๋ณด์•˜์œผ๋ฉด ์ข‹๊ฒ ๋‹คโœ๏ธโœ๏ธ

 

 

(1) ํ—ค๋”ฉํƒœ๊ทธ

  • `h1` : ๋กœ๊ณ ๋งํฌ ์˜์—ญ
  • `h2~h3` : ์ปจํ…์ธ  ํƒ€์ดํ‹€
  • ์‹œ๊ฐ์žฅ์• ์ธ ์‚ฌ์šฉ์„ฑ์„ ๊ณ ๋ คํ–ˆ์„ ๋•Œ `h1`ํƒœ๊ทธ๋Š” ๋Œ€๋ถ€๋ถ„ "ํ™ˆ"์œผ๋กœ ์ธ์‹ํ•ด ๋กœ๊ณ ๋กœ ์‚ฌ์šฉํ•œ๋‹ค.
  • ๋‹จ, SEO ์œ„ํ•ด `h1`์„ ๋กœ๊ณ ๊ฐ€ ์•„๋‹Œ ๋ณธ๋ฌธ ํƒ€์ดํ‹€๋กœ ํ•˜๋Š” ๊ฒฝ์šฐ๋„ ์žˆ๋‹ค.

 

(2) ์ด๋ฏธ์ง€ alt

  • `<img src="" alt="">` ์—์„œ ์ด๋ฏธ์ง€ ์„ค๋ช… ๋ถ€๋ถ„์ธ `alt`๋Š” 200์ž ๋„˜์–ด๊ฐ€๋ฉด ์Šคํฌ๋ฆฐ๋ฆฌ๋” ์‚ฌ์šฉ์ž๊ฐ€ ๋‚ด์šฉ์„ ์ธ์ง€ํ•˜๊ธฐ๊ฐ€ ์–ด๋ ต๋‹ค๊ณ  ํ•œ๋‹ค.
    ์ด๋ฅผ ๋Œ€์ฒดํ…์ŠคํŠธ(blind) https://jmjmjm.tistory.com/78 ๋กœ ๋Œ€์ฒด ํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

 

(3) ๋กœ๊ทธ์ธํ™”๋ฉด ํฌ์ปค์Šค ์ˆœ์„œ

๋กœ๊ทธ์ธํ™”๋ฉด ํฌ์ปค์Šค ์ˆœ์„œ

 

(4) title ์†์„ฑ

  • input์— label์ด ๋”ฐ๋กœ ์žˆ์ง€ ์•Š์„ ๊ฒฝ์šฐ ํ•ด๋‹น input์— title์„ ๋„ฃ์–ด์ค˜์•ผ ํ•œ๋‹ค.
    • gpt์—์„œ๋Š” title ์†์„ฑ์„ ์ฝ์–ด ์ฃผ์ง€ ์•Š๋Š” ๊ฒฝ์šฐ๋„ ๋งŽ๋‹ค๊ณ  ํ•ด์„œ `aria` ์†์„ฑ์„ ๊ถŒ๊ณ ํ•˜๊ณ  ์žˆ๋‹ค.
    • aria์†์„ฑ์„ ํ•˜๋Š” ๊ฒƒ์ด ๋” ํ™•์‹คํ•œ ๊ฒƒ ๊ฐ™๋‹ค.
  • input์— placeholder ๋‚ด์šฉ๋„ ๋„ฃ์–ด์ค˜์•ผ ํ•œ๋‹ค. (๋‹จ, "์ž…๋ ฅ", "์„ ํƒ" ์€ ๋นผ์ค€๋‹ค(์• ์ดˆ์— input์ด๋ผ๋Š” ๊ฒƒ์ด ์ € ๋‘๋‹จ์–ด๋ฅผ ํฌํ•จํ•˜๋ฏ€๋กœ))
  • ์ผ๋ถ€ ์Šคํฌ๋ฆฐ๋ฆฌ๋”๊ธฐ๋Š” placeholder๋ฅผ ์ฝ์–ด์ฃผ์ง€ ์•Š๋Š”๋‹ค๊ณ  ํ•œ๋‹ค. 
<span class="label">์ฃผ์ œ</span>
<input type="text" placeholder="์ž…๋ ฅํ•ด์ฃผ์„ธ์š”" title="์ฃผ์ œ">

<span class="label">๋ฐฐ์ •๋ฒˆํ˜ธ</span>
<input type="number" placeholder="3์ž๋ฆฌ ์ž…๋ ฅํ•ด์ฃผ์„ธ์š”" title="๋ฐฐ์ •๋ฒˆํ˜ธ 3์ž๋ฆฌ">
<button type="button" class="btn-delete">
	<span class="blind">ํŒŒ์ผ๋ช….pdf ์‚ญ์ œ</span>
</button>
<!-- ๋˜๋Š” -->
<button type="button" class="btn-delete" aria-label="ํŒŒ์ผ๋ช….pdf ์‚ญ์ œ"></button>
  • `<frame><iframe><abbr><a><img><input><label>` ์š”์†Œ ์ด์™ธ์— ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ์ ‘๊ทผ์„ฑ ๊ด€์ ์—์„œ ์‚ฌ์šฉ์„ ์ง€์–‘ํ•œ๋‹ค.
  • title์†์„ฑ์€ ๋ชจ๋ฐ”์ผ ๊ธฐ๊ธฐ, ํ‚ค๋ณด๋“œ ์‚ฌ์šฉ์ž, ๋ณด์กฐ ๊ธฐ์ˆ  ์‚ฌ์šฉ์ž์—๊ฒŒ ์ ‘๊ทผ์ด ์–ด๋ ค์šธ ์ˆ˜ ์žˆ์–ด(ํ„ฐ์น˜ ๋ฌธ์ œ) ๋ชจ๋“  ์‚ฌ์šฉ์ž๊ฐ€ ์‰ฝ๊ฒŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ์‹์œผ๋กœ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค(blind)

 

(5) aria-label

<button type="button" class="btn-delete" aria-label="ํŒŒ์ผ๋ช….pdf ์‚ญ์ œ">
	์‚ญ์ œํ…์ŠคํŠธ
</button>
  • ์Šคํฌ๋ฆฐ๋ฆฌ๋”๊ธฐ๋กœ ์ฝ์–ด์ฃผ๋ฉด button ์•ˆ์˜ "์‚ญ์ œํ…์ŠคํŠธ"๋Š” `aria-label` ์†์„ฑ์œผ๋กœ ์ธํ•ด ์ฝ์–ด์ฃผ์ง€ ์•Š๋Š”๋‹ค.
  • `aria-label` ์†์„ฑ์€ ์š”์†Œ์˜ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ์ด๋ฆ„์„ ์ œ๊ณตํ•˜๋ฉฐ ๋Œ€๋ถ€๋ถ„์˜ ์Šคํฌ๋ฆฐ๋ฆฌ๋”๊ธฐ์—์„œ ์š”์†Œ์˜ ๋‚ด๋ถ€ ํ…์ŠคํŠธ๋ณด๋‹ค ์šฐ์„  ์ˆœ์œ„๊ฐ€ ๋†’๋‹ค๊ณ  ํ•œ๋‹ค.
  • ์ด๋Š” `aria-label` ํ…์ŠคํŠธ๊ฐ€ ์•ต์ปค ํ…์ŠคํŠธ๋ฅผ ์žฌ์ •์˜ํ•˜๋Š” ๊ฒƒ์„ ์˜๋„ํ•œ ๊ฒƒ.

(6) input type="radio", "checkbox" required

1. input type="radio" ์ผ ๊ฒฝ์šฐ

  • `<label>`์•ˆ์— ๋Œ€์ฒดํ…์ŠคํŠธ๋ฅผ ๋„ฃ์–ด์ค€๋‹ค.
  • `required` ์†์„ฑ์„ ๋„ฃ์–ด์ค€๋‹ค.
<div class="label">๊ตฌ๋ถ„<span class="required"><strong class="blind">ํ•„์ˆ˜์ž…๋ ฅ</strong></span></div>
<div class="forms-box">
	<input type="radio" name="rdo" id="rdo1" required>
    <label for="rdo1">์„ ํƒ<span class="blind">๊ตฌ๋ถ„</span></label>
</div>
<div class="forms-box">
	<input type="radio" name="rdo" id="rdo2" required>
    <label for="rdo2">๋ฏธ์„ ํƒ<span class="blind">๊ตฌ๋ถ„</span></label>
</div>

 

2. input type="checkbox" ์ผ ๊ฒฝ์šฐ

  • "ํ•„์ˆ˜์ž…๋ ฅ" ํ…์ŠคํŠธ๊ฐ€ ์•„๋‹Œ "ํ•œ ๊ฐ€์ง€ ์ด์ƒ ํ•„์ˆ˜ ์„ ํƒ" ์„ ๋„ฃ์–ด์ค€๋‹ค.
  • `required` ์†์„ฑ์€ ๋„ฃ์ง€ ์•Š๋Š”๋‹ค.
<div class="label">๊ตฌ๋ถ„<span class="required"><strong class="blind">ํ•œ ๊ฐ€์ง€ ์ด์ƒ ํ•„์ˆ˜ ์„ ํƒ</strong></span></div>
<div class="forms-box">
	<input type="checkbox" name="chk" id="chk1">
    <label for="chk1">์„ ํƒ1<span class="blind">๊ตฌ๋ถ„</span></label>
</div>
<div class="forms-box">
	<input type="checkbox" name="chk" id="chk2">
    <label for="chk2">์„ ํƒ2<span class="blind">๊ตฌ๋ถ„</span></label>
</div>

 

 

(7) ํ…Œ์ด๋ธ” tabindex

  • ํ…Œ์ด๋ธ” ๊ฐ€๋กœ์Šคํฌ๋กค, ์„ธ๋กœ์Šคํฌ๋กค์ด ์ƒ๊ธธ ๊ฒฝ์šฐ ํฌ์ปค์Šค๊ฐ€ ๋˜์–ด์•ผ ํ•œ๋‹ค.
    ์ด ๋•Œ `tabindex="0"` ์„ ์‚ฌ์šฉํ•ด ํฌ์ปค์Šค๋ฅผ ์ฃผ์–ด ํ™”์‚ดํ‘œ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•ด ๋‚ด์šฉ์„ ๋ณผ ์ˆ˜ ์žˆ๋„๋ก ํ•˜๊ธฐ ์œ„ํ•จ์ด๋‹ค.

 

์ผ๋‹จ์€ ์—ฌ๊ธฐ๊นŒ์ง€ ์ •๋ฆฌ.. ์ฐจํ›„์— ์ƒ๊ฐ๋‚˜๋ฉด ๋” ์ถ”๊ฐ€ํ•ด์•ผ๊ฒ ๋‹คโœ๏ธ