ARIA
ì ê·¼ê°ë¥í ë¦¬ì¹ ì¸í°ë· ì´í리ì¼ì´ì (Accessible Rich Internet Applications, ARIA)ì ì¥ì 를 ê°ì§ ì¬ì©ìê° ì¹ ì½í ì¸ ì ì¹ ì´í리ì¼ì´ì (í¹í JavaScript를 ì¬ì©íì¬ ê°ë°í ê²½ì°)ì ë ì½ê² ì ê·¼í ì ìë ë°©ë²ì ì ìíë ì¬ë¬ í¹ì±ì ë§í©ëë¤.
ARIAë HTMLì ë³´ì¶©í´, ì¼ë°ì ì¼ë¡ ë³´ì¡° 기ì ì´ ì ì ìë ìí¸ìì© ë° íí ì°ì´ë ì´í리ì¼ì´ì ìì ¯ì íìí ì 보를 ì ê³µí©ëë¤. ì를 ë¤ì´ ARIAë HTML4ììì íì ëëë§í¬, JavaScript ìì ¯, í¼ íí¸ ë° ì¤ë¥ ë©ìì§, ì¤ìê° ì½í ì¸ ì ë°ì´í¸ ë±ì ì ê·¼ ê°ë¥í ííë¡ ì ê³µí©ëë¤.
ê²½ê³ : ì¬ê¸° ë±ì¥íë ë§ì ìì ¯ì ëì¤ì HTML5ë¡ íµí©ëì¼ë¯ë¡, 구ííë ¤ë 기ë¥ì ê°ì§ ììê° ì¡´ì¬íë¤ë©´ ê°ë°ìë ëëë¡ ì미를 ê°ì§ HTMLì ARIAë³´ë¤ ì í¸í´ì¼ í©ëë¤. ëª ê°ì§ ììë¡, ë¤ì´í°ë¸ ììë í¤ë³´ë ì ê·¼ì±, ìí , ìí를 ë´ì¥íê³ ììµëë¤. ê·¸ë¬ë ARIA를 ì°ê¸°ë¡ ê²°ì íë¤ë©´ ë¸ë¼ì°ì ëì ë°©ìì ë°ë¼ íë ê±´ ê°ë°ìì ì± ìì ëë¤.
ë¤ìì ì§í íìì¤ ìì ¯ì ë§í¬ì ì ëë¤.
<div
id="percent-loaded"
role="progressbar"
aria-valuenow="75"
aria-valuemin="0"
aria-valuemax="100"></div>
This progress bar is built using a <div>, which has no meaning. Unfortunately, there isn't a more semantic tag available to developers in HTML 4, so we need to include ARIA roles and properties. These are specified by adding attributes to the element. In this example, the role="progressbar" attribute informs the browser that this element is actually a JavaScript-powered progress bar widget. The aria-valuemin and aria-valuemax attributes specify the minimum and maximum values for the progress bar, and the aria-valuenow describes the current state of it and therefore must be kept updated with JavaScript. Along with placing them directly in the markup, ARIA attributes can be added to the element and updated dynamically using JavaScript code like this:
// Find the progress bar <div> in the DOM.
var progressBar = document.getElementById("percent-loaded");
// Set its ARIA roles and states,
// so that assistive technologies know what kind of widget it is.`;
progressBar.setAttribute("role", "progressbar");
progressBar.setAttribute("aria-valuemin", 0);
progressBar.setAttribute("aria-valuemax", 100);
// Create a function that can be called at any time to update
// the value of the progress bar.
function updateProgress(percentComplete) {
progressBar.setAttribute("aria-valuenow", percentComplete);
}
ì°¸ê³ :
that ARIA was invented after HTML4, so does not validate in HTML4 or its XHTML variants. However, the accessibility gains it provides far outweigh any technical invalidity. In HTML5, all ARIA attributes validate. The new landmark elements (<main>, <header>, <nav> etc) have built-in ARIA roles, so there is no need to duplicate them.
ì§ì
ë¤ë¥¸ ì¹ ê¸°ì ê³¼ ë§ì°¬ê°ì§ë¡, ARIA ìì íê²½ ë³ ì§ì ìì¤ì ì°¨ì´ë¥¼ ë³´ì ëë¤. ì§ì ìì¤ì ì¬ì©ìì ì´ì ì²´ì ë° ì¬ì©íë ë¸ë¼ì°ì , ê·¸ë¦¬ê³ ì°ê²°ë ë³´ì¡° 기ì ë§ë¤ ë¤ë¦ ëë¤. ê²ë¤ê° ê°ê°ì ë²ì ëí ìí¥ì ì¤ëë¤. ì¤ëë ìíí¸ì¨ì´ ë²ì ì í¹ì ARIA ìí ì ì§ìíì§ ìê±°ë, ë¶ë¶ì ì¼ë¡ë§ ì§ìíê±°ë, ì못ë 기ë¥ì ê°ì§ê³ ìì ì ììµëë¤.
ë ë¤ë¥¸ ì¤ìí ì ì, ë³´ì¡° 기ì ì ìì¡´íë ì¬ì©ì ì¼ë¶ê° ì»´í¨í° ë° ë¸ë¼ì°ì ìí¸ìì© ê¸°ë¥ì ìì´ë²ë¦´ê¹ ëë ¤ì ìíí¸ì¨ì´ ì ê·¸ë ì´ë를 주ì í ì ìë¤ë ì ì ì¸ì§íë ê²ì ëë¤. ê·¸ë¬ë¯ë¡ ê°ë¥í í ë³´ì¡° 기ì ì´ í¨ì¬ ëê² ì§ìíë, ì미를 ê°ì§ HTML ìì를 ì¬ì©íë í¸ì´ ì¢ìµëë¤.
ë§ì§ë§ì¼ë¡ ìì±í ARIAì ì¤ì ë³´ì¡° 기ì ë¡ ìííë ê²ë íìí©ëë¤. ë¸ë¼ì°ì ì뮬ë ì´í°ì ì뮬ë ì´í°ê° ì ì²´ í ì¤í¸ì í¨ì¨ì ì¸ ëêµ¬ê° ìëë¯, ì ì¬ ë³´ì¡° 기ì ë§ì¼ë¡ë ìë²½í ì§ìì ì¥ë´í기ì ë¶ì¡±í©ëë¤.
ììµì
- ARIA ìê°
-
ëì ì¸ ì»¨í ì¸ ë¥¼ ARIA를 ì ì©í´ ì ê·¼ì±ì ê°ì¶ëë¡ íë ë°©ë²ì ëí ìê°í ê¸ì ëë¤. Gez Lemonì´ 2008ë ì ì´ ARIA ë¶ì¼ì ê³ ì ì¸ ARIA introë 참조íììì¤.
- ì¤í¬ë¦° 리ë기ìì ARIA를 ì´ë»ê² ì¬ì©íëì§ì ëí ìì
-
ARIA "ì ì© ì ", "ì ì© í" ììì ë¹ë¡¯íì¬, ì¹ìì ë³¼ ì ìë ì¤ì ì¬ì© ìì ë¤ê³¼ ê·¸ê²ë³´ë¤ ê°ëµíë ììë¤ì ë³¼ ì ììµëë¤.
- ARIA ì¬ì©í기
-
ê°ë°ì를 ìí ì¤ì© ê°ì´ë를 ì ê³µíë ê¸ì ëë¤. HTML ììì ì´ë¤ ARIA ìì±ë¤ì ì¨ì¼ íëì§ì ëí´ ì ìíë ë´ì©ì ë´ê³ ììµëë¤. ì ìì ì¤ì 구í ìí©ì ë°íì¼ë¡ í©ëë¤.
ê°ë¨í ARIA í¥ì
- ARIA ëëë§í¬ë¥¼ ì¬ì©íì¬ íì´ì§ íì ê³ ëí
-
ì¤í¬ë¦° 리ë ì¬ì©ìë¤ì ìí´ ARIA ëëë§í¬ë¥¼ ì¬ì©íì¬ ì¹ íì´ì§ì íì 기ë¥ì í¥ììí¤ë ë²ì ìê°í´ì£¼ë ì¢ì ê¸ì ëë¤. ì´ì ëë¶ì´ì ARIA 구í ë ¸í¸ ë° ì¤ì ì¬ì´í¸ììì íì© ììë¤ì ì°¸ê³ íì¸ì. (2011ë 7ìì ì ë°ì´í¸ë¨)
- í¼ ì ê·¼ì± í¥ìí기
-
ARIAë ëì ì½í ì¸ ë§ì ìí ê²ì´ ìëëë¤! ARIA í¹ì±ì ì¬ì©í´ HTML í¼ì ì ê·¼ì±ì ëì´ë ë°©ë²ì ììë³´ì¸ì.
ì¤í¬ë¦½í¸ ì²ë¦¬ë ìì ¯ì ìí ARIA
- JavaScript ìì ¯ì í¤ë³´ë íì ë° ì´ì ì ì©í기
-
<input>,<button>ë± ë´ì¥ ììë 기본ì ì¼ë¡ í¤ë³´ë를 ì§ìí©ëë¤.<div>ì ARIAë¡ í¹ì ìì를 íë´ ë¸ë¤ë©´, ê·¸ ìì ¯ë í¤ë³´ë를 ì§ìíëë¡ í´ì¼ í©ëë¤. - ì¤ìê° ìì
-
ì¤ìê° ììì íì´ì§ ì½í ì¸ ì ê°í´ì§ë ë³ê²½ì ì ì ê·¼ì± ë³´ì¡° 기ì ì´ ì´ë»ê² ì²ë¦¬í´ì¼ íëì§ ì ìí©ëë¤.
- ARIA ì¤ìê° ììì¼ë¡ ì½í ì¸ ë³ê²½ ì리기
-
JAWS ì¤í¬ë¦° 리ë ìíí¸ì¨ì´ì ê°ë°ì§ì´ ì¤ìê° ììì ëí´ ìì½í ê¸ì ëë¤.
íì¤í를 ìí ë ¸ê³
- WAI-ARIA ëª ì¸
-
W3C ëª ì¸ì ëë¤.
- WAI-ARIA ìì± ìë´ì
-
íí ì°ì´ë ìì ¯ì ARIAì¤ë½ê² ë§ëë ë°©ë²ì ëí ê³µì ìë´ìë¡, íë¥í ììì ëë¤.
ë¹ëì¤
ë¤ì ë°í ë¹ëì¤ë ARIA를 ì´í´í ì ìë íë¥í ë°©ë²ì ëë¤. ARIA, Accessibility APIs and coding like you give a damn! â Léonie Watson
ë²ê·¸ ì ì¶
ë¸ë¼ì°ì , ì¤í¬ë¦° 리ë, JavaScript ë¼ì´ë¸ë¬ë¦¬ì ARIA ë²ê·¸ ì ì¶í기