๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๋ฐ˜์‘ํ˜•

๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ปSTUDY/Publishing

(8)
๋งˆํฌ์—… ์ •๋ฆฌ ๋ฒ„ํŠผ์€ buttonํƒœ๊ทธ. anchorํƒœ๊ทธ๋Š” ํŽ˜์ด์ง€ ์ด๋™. input์— label์„ ๋งค์นญ ๋ชปํ•  ๋•Œ๋Š” title ์‚ฌ์šฉ. a๋งํฌ ํ…์ŠคํŠธ์— aria-label="" a href="javascript:void(0)" ๋Œ€์ฒดํ…์ŠคํŠธ๋Š” aria-label ์ ์šฉ. aria-label์ ์šฉ์ด ์•„๋‹ ์‹œ sr-only ํด๋ž˜์Šค ์ ์šฉ. .sr-only { position:absolute; overflow:hidden; width:1px; height:1px; margin:-1px; padding:0px; clip:rect(0,0,0,0); } ๋งˆํฌ์—…์€ ํƒญ ํฌ์ปค์Šค ์œ„์น˜๋กœ ๋งŒ๋“ ๋‹ค.(ํŒ์—…์˜ ๋‹ซ๊ธฐ๋ฒ„ํŠผ์€ ๋งˆ์ง€๋ง‰์— ์ ์šฉ๋˜์•ผ ํ•จ) ๋ถ€ํŠธ์ŠคํŠธ๋žฉ์€ ๋งˆํฌ์—… ์›น์ ‘๊ทผ์„ฑ์„ ์ฐธ๊ณ ํ•˜๊ธฐ ์ข‹๋‹ค. Q. sr-only๊ฐ€ ์žˆ๋Š”๋ฐ ์™œ font-size:0px์„ ์‚ฌ์šฉํ• ๊นŒ?..
Meta Tag, OG(์˜คํ”ˆ๊ทธ๋ž˜ํ”„) ์‚ฌ์šฉํ•˜๊ธฐ ์˜คํ”ˆ๊ทธ๋ž˜ํ”„(Open Graph) ์ฝ˜ํ…์ธ ์˜ ์š”์•ฝ๋‚ด์šฉ์ด SNS์— ๊ฒŒ์‹œ๋˜๋Š”๋ฐ ์ตœ์ ํ™”๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ๊ฐˆ ์ˆ˜ ์žˆ๋„๋ก ์„ค์ •ํ•˜๋Š” ๊ฒƒ ์›๋ฆฌ ๋งํฌ๋ผ๋Š” ๊ฒƒ์ด ์ธ์‹๋˜๋ฉด ํฌ๋กค๋Ÿฌ๊ฐ€ ํ•ด๋‹น ์›น์‚ฌ์ดํŠธ์˜ HTML head์˜ ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ๋ฅผ ํฌ๋กค๋งํ•˜์—ฌ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ํ™”๋ฉด์„ ์ƒ์„ฑ ํ”„๋กœํ† ์ฝœ ๋น„๊ต์  ํ†ต์ผ๋œ ๋ฐฉ๋ฒ•์œผ๋กœ ํŽ˜์ด์Šค๋ถ์˜ open graph ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•œ๋‹ค. ํŽ˜์ด์Šค๋ถ, ๋„ค์ด๋ฒ„๋ธ”๋กœ๊ทธ, ์นด์นด์˜คํ†ก ๋“ฑ์—์„œ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š” ํ”„๋กœํ† ์ฝœ open graph ๋ฌธ์„œ ํƒœ๊ทธ ์‚ฌ์šฉ๋ฒ• 800 X 800 ๋˜๋Š” 600 x 315 ๋˜๋Š” 1200 x 630 ๋Œ€๋‹ค์ˆ˜ ์นดํ†ก์œผ๋กœ ๋งŽ์ด url์„ ๋ณด๋‚ด๋ฏ€๋กœ 800x800์œผ๋กœ ๋งž์ถ”์—ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ์›น์— ์„ค์ •ํ•ด์ค˜์•ผ ํ•˜๋Š” og ๋ฉ”ํƒ€ํƒœ๊ทธ ๋„ค์ด๋ฒ„๋ธ”๋กœ๊ทธ, ์นด์นด์˜คํ†ก ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์„ค์ • ํŠธ์œ„ํ„ฐ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์„ค์ • Reference Meta Tag, OG(์˜ค..
์›น์ ‘๊ทผ์„ฑ์— ์ฃผ์˜ํ•ด์•ผ ํ•  ๋ถ€๋ถ„ ์›น์ ‘๊ทผ์„ฑ ์ฃผ์˜ํ•  ๋ถ€๋ถ„ 1. label || title form์—์„œ label๊ณผ input์ด ๋“ค์–ด๊ฐˆ ๋•Œ label์— input ์˜ ์•„์ด๋””๋ฅผ ๋„ฃ์–ด ์—ฐ๊ฒฐ์‹œ์ผœ์ค€๋‹ค. ํ•˜์ง€๋งŒ label์ด ์—†์„ ๊ฒฝ์šฐ input์— title=""๋ฅผ ๋„ฃ์–ด ๋ช…์‹œํ•ด์ค€๋‹ค. 2. aria-hidden ํ™”๋ฉด์ƒ ์ˆจ๊ฒจ์ง€๊ฑฐ๋‚˜ ๊ฐ€๋ ค์ง„ ์ฝ˜ํ…์ธ  ARIA๋ฅผ ์ ์šฉํ•˜์—ฌ ๋ชจ๋ฐ”์ผ ์Šคํฌ๋ฆฐ๋ฆฌ๋”๊ธฐ๊ฐ€ ์ ‘๊ทผํ•˜์ง€ ์•Š๋„๋ก ๊ตฌํ˜„. undefined(default) true ์ ‘๊ทผ์„ฑ API ์ฐจ๋‹จ. (ํ™”๋ฉดํ‘œ์‹œ ์—ฌ๋ถ€์™€ ๋ฌด๊ด€ API ์ฐจ๋‹จ) false ์ ‘๊ทผ์„ฑ API ์‚ฌ์šฉ. (ํ™”๋ฉด์— ํ‘œ์‹œํ•œ ๊ฒฝ์šฐ API ์‚ฌ์šฉ) aria-hidden vs hidden aria-hidden :: ํ™”๋ฉด์— ํ‘œ์‹œ๋˜๋‚˜ ์ ‘๊ทผ์„ฑAPI(๋ณด์กฐ๊ธฐ๊ธฐ ์ ‘๊ทผ ๊ฐ€๋Šฅ์„ฑ) ์ฐจ๋‹จ ์ƒํƒœ ๊ฒฐ์ •. hidden :: ํ™”๋ฉด์— ํ‘œ์‹œ๋˜์ง€ ์•Š์•„ ์ ‘๊ทผ ๋ถˆ..
NHN ์ฝ”๋”ฉ์ปจ๋ฒค์…˜ pdf ์ž๋ฃŒ https://nuli.navercorp.com/data/convention/NHN_Coding_Conventions_for_Markup_Languages.pdf ์ตœ์‹ ํŒ์€ ์•„๋‹ˆ์ง€๋งŒ ์ฝ์–ด๋ณด๋ฉด ์œ ์šฉํ•˜๋‹ค.
Google HTML/CSS Style Guide ๋ชฉ์ฐจ 1 ๋ฐฐ๊ฒฝ 2 ์ผ๋ฐ˜ 2.1 ์ผ๋ฐ˜ ์Šคํƒ€์ผ ๊ทœ์น™ 2.2 ์ผ๋ฐ˜ ์„œ์‹ ๊ทœ์น™ 2.3 ์ผ๋ฐ˜ ๋ฉ”ํƒ€ ๊ทœ์น™ 3 HTML 3.1 HTML ์Šคํƒ€์ผ ๊ทœ์น™ 3.2 HTML ํ˜•์‹ ๊ทœ์น™ 4 CSS 4.1 CSS ์Šคํƒ€์ผ ๊ทœ์น™ 4.2 CSS ์„œ์‹ ๊ทœ์น™ 4.3 CSS ๋ฉ”ํƒ€ ๊ทœ์น™ 1 ๋ฐฐ๊ฒฝ ์ด ๋ฌธ์„œ๋Š” HTML ๋ฐ CSS์— ๋Œ€ํ•œ ํ˜•์‹ ๋ฐ ์Šคํƒ€์ผ ๊ทœ์น™์„ ์ •์˜ํ•œ๋‹ค. ํ˜‘์—…, ์ฝ”๋“œ ํ’ˆ์งˆ์„ ๊ฐœ์„ ํ•˜๊ณ  ์ง€์› ์ธํ”„๋ผ๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•œ๋‹ค. 2 ์ผ๋ฐ˜ 2.1 ์ผ๋ฐ˜ ์Šคํƒ€์ผ ๊ทœ์น™ 2.1.1 ํ”„๋กœํ† ์ฝœ(Protocol) ๋ฆฌ์†Œ์Šค์— HTTPS๋ฅผ ๋„ฃ๋Š” ๊ฒƒ์ด ์ข‹๋‹ค. HTTPS(https:) ๋Š” ์ด๋ฏธ์ง€ ๋ฐ ๊ธฐํƒ€ ๋ฏธ๋””์–ด ํŒŒ์ผ, ์Šคํƒ€์ผ ์‹œํŠธ ๋ฐ ์Šคํฌ๋ฆฝํŠธ์— ๋ถ™์ด๋Š” ๊ฒƒ์ด ์ข‹๋‹ค. /* ๊ถŒ์žฅํ•˜์ง€ ์•Š์Œ : ํ”„๋กœํ† ์ฝœ ์ƒ๋žต */ @import '//fonts.google..
์›น์ ‘๊ทผ์„ฑ์„ ์œ„ํ•œ ํ…์ŠคํŠธ ์ˆจ๊น€ ์ฒ˜๋ฆฌ(blind text) ์‚ฌ์šฉ์ด์œ ! display: none ์ด ์•„๋‹Œ ์ ‘๊ทผ์„ฑ์„ ๊ณ ๋ คํ•ด ์ˆจ๊น€์ฒ˜๋ฆฌํ•œ๋‹ค. .hide { position: absolute; top: -9999px; left: -9999px; text-index: -9999px; width: 1px; height: 1px; } ์œ„์™€ ๊ฐ™์€ ๊ฒฝ์šฐ ์ ‘๊ทผ์„ฑ์— ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚จ๋‹ค. text-indent์˜ ๊ฒฝ์šฐ, ์•ต์ปคํƒœํฌ()๋‚˜ html5์—์„œ ๋Œ€ํ™”ํ˜• ์š”์†Œ๋“ค์—์„œ ์ดˆ์ ์„ document ๋ฐ–์— ์žก์•„๋ฒ„๋ฆฌ๋Š” ๋ฌธ์ œ์ ์ด ์žˆ๋‹ค. ๋ณด์ด์ง€ ์•Š๋Š” ๊ณณ์— ์ดˆ์ ์ด ๋‚˜๊ฐ€๋Š” ๊ฒƒ์€ ์ ‘๊ทผ์„ฑ์— ์œ„๋ฐ˜๋˜๋ฏ€๋กœ, ์ˆจ๊น€ํ…์ŠคํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ ์ž ํ•  ๋•Œ ๋ถ€์ ํ•ฉํ•˜๋‹ค. .blind { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect..
์›น ํ‘œ์ค€์„ฑ(Web Standards) ์›น ํ‘œ์ค€์„ฑ(Web Standards) ์›น ํ‘œ์ค€์ด๋ž€? ์‚ฌ์šฉ์ž๊ฐ€ ์–ด๋–ค ๋ธŒ๋ผ์šฐ์ €๋‚˜ ๊ธฐ๊ธฐ๋ฅผ ์‚ฌ์šฉํ•ด๋„ ๋‚ด์šฉ์„ ๋™์ผํ•˜๊ฒŒ ๋ณผ ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๊ฒƒ. ํ‘œ์ค€ํ™” ๋‹จ์ฒด์ธ W3C๊ฐ€ ๊ถŒ๊ณ ํ•œ ํ‘œ์ค€์•ˆ์— ๋”ฐ๋ผ ์›น์„ ์ž‘์„ฑํ•  ๋•Œ ์ด์šฉํ•˜๋Š” HTML, CSS, JavaScript ๋“ฑ์— ๋Œ€ํ•œ ๊ทœ์ •์ด ๋‹ด๊ฒจ ์žˆ๋‹ค. ์›น ํ‘œ์ค€ ์ค€์ˆ˜๋Š” ์›น ์ ‘๊ทผ์„ฑ ์ค€์ˆ˜๋ฅผ ์œ„ํ•œ ํ•ต์‹ฌ์ด๋‹ค. ์ฆ‰, ์›น ์ ‘๊ทผ์„ฑ์ด ๋” ํฐ ๊ฐœ๋…์ด๋ฉฐ. ์›น ํ‘œ์ค€์€ ์›น ์ ‘๊ทผ์„ฑ์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•œ ๋ถ€๋ถ„์  ์š”์†Œ๋‹ค. ์›น ํ‘œ์ค€ ๊ด€๋ จ ๊ธฐ์ˆ ์˜ ์†Œ๊ฐœ ๊ตฌ์กฐ (X)HTML ํ‘œํ˜„ CSS ๋™์ž‘ Script 1. ๊ตฌ์กฐ ์–ธ์–ด (X)HTML & XML HTML5๋Š” ํŠน์ • ํ”Œ๋Ÿฌ๊ทธ์ธ์— ์˜์กดํ•˜์ง€ ์•Š๊ณ  ์ฝ˜ํ…์ธ ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด ๋ชฉํ‘œ. ๋งŽ์€ ๊ธฐ์—…๋“ค์ด HTML5์˜ ํ‘œ์ค€ํ™”์— ํž˜์„ ๋ณดํƒœ๊ณ  ์žˆ๊ณ , Firefox, Opera, Safari, Chrom..
์›น์ ‘๊ทผ์„ฑ(Web Accessibility) ์›น์ ‘๊ทผ์„ฑ(Web Accessibility) ์›น ์ ‘๊ทผ์„ฑ(Web Accessibility) ์›น ์ ‘๊ทผ์„ฑ(Web Accessibility) ์›น ์‚ฌ์ดํŠธ์—์„œ ์ œ๊ณตํ•˜๋Š” ์ •๋ณด๋ฅผ ์ฐจ๋ณ„ ๋ฐ ์ œํ•œ ์—†์ด ๋™๋“ฑํ•˜๊ฒŒ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ณด์žฅํ•˜๋Š” ๊ฒƒ. ์žฅ์• ์ธ ๋ฐ ๊ณ ๋ น์ž ๋“ฑ์„ ํฌํ•จํ•œ ๋ชจ๋“  ์‚ฌ๋žŒ ๋‹ค์–‘ํ•œ ํ”Œ๋žซํผ ๋ฐ ์žฅ์น˜, ์›น ๋ธŒ๋ผ์šฐ์ € ๋“ฑ์˜ ๋ชจ๋“  ํ™˜๊ฒฝ ์›น์˜ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ์š”์†Œ์ธ HTML์€ ๋‹ค์–‘ํ•œ ํ”Œ๋žซํผ๊ณผ ์žฅ์น˜์— ๋…๋ฆฝ์ ์ธ ์ •๋ณด๊ตํ™˜ ์ˆ˜๋‹จ์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด ํƒ„์ƒ๋˜์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์‚ฌ์šฉ์ž์˜ ํ™˜๊ฒฝ์ด๋‚˜ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๊ธฐ, ์šด์˜์ฒด์ œ์— ๊ฐ€๋Šฅํ•œ ํ•œ ์˜ํ–ฅ์„ ๋ฐ›์ง€ ์•Š๊ณ  ์›น์ด ์ œ๊ณตํ•˜๋Š” ์ •๋ณด๋ฅผ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ „๋‹ฌํ•˜๊ณ  ํ•˜๋Š” ๋ชฉ์ ์—์„œ ๋งŒ๋“ค์–ด์ง„ ์ •๋ณด ์ „๋‹ฌ ์ฒด๊ณ„์ด๋‹ค. ํ•˜์ง€๋งŒ ๊ตญ๋‚ด ์›น์˜ ํ˜„์‹ค์€ ์›น์˜ ๊ธฐ๋ณธ์ ์ด๊ณ  ์ค‘์š”ํ•œ ๋ชฉ์ ์„ ๋ฌด์‹œํ•˜๊ณ  ํŠน์ • ๊ธฐ๊ธฐ๋‚˜ ์šด์˜์ฒด์ œ์—๋งŒ ์ตœ์ ํ™”๋œ ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค. ์ด๋Ÿฌ..

๋ฐ˜์‘ํ˜•