From b2b0eed8e7740cced24b8dd3dfa4599cf7354bf5 Mon Sep 17 00:00:00 2001 From: Chanhee Lee Date: Fri, 22 Feb 2019 18:17:23 +0900 Subject: [PATCH 1/5] Translate "Accessibility" (Draft) --- content/docs/accessibility.md | 323 ++++++++++++++++------------------ 1 file changed, 151 insertions(+), 172 deletions(-) diff --git a/content/docs/accessibility.md b/content/docs/accessibility.md index 663251a03..c523cef33 100644 --- a/content/docs/accessibility.md +++ b/content/docs/accessibility.md @@ -1,32 +1,32 @@ --- id: accessibility -title: Accessibility +title: 접근성 permalink: docs/accessibility.html --- -## Why Accessibility? {#why-accessibility} +## 접근성이 필요한 이유 {#why-accessibility} -Web accessibility (also referred to as [**a11y**](https://en.wiktionary.org/wiki/a11y)) is the design and creation of websites that can be used by everyone. Accessibility support is necessary to allow assistive technology to interpret web pages. +웹 접근성(별칭: [**a11y**](https://en.wiktionary.org/wiki/a11y))는 모두가 사용할 수 있도록 웹사이트를 디자인, 개발하는 것을 의미합니다. 보조과학기술(assistive technology)들이 웹페이지들을 해석할 수 있도록 접근성을 갖추는 것이 반드시 필요합니다. -React fully supports building accessible websites, often by using standard HTML techniques. +React는 접근성을 갖춘 웹사이트를 만들 수 있도록 모든 지원을 하고 있으며, 대부분은 표준 HTML 기술이 사용됩니다. -## Standards and Guidelines {#standards-and-guidelines} +## 표준 및 지침 {#standards-and-guidelines} ### WCAG {#wcag} -The [Web Content Accessibility Guidelines](https://www.w3.org/WAI/intro/wcag) provides guidelines for creating accessible web sites. +[Web Content Accessibility Guidelines](https://www.w3.org/WAI/intro/wcag)는 접근성을 갖춘 웹사이트를 만드는 데 필요한 지침들을 제공합니다. -The following WCAG checklists provide an overview: +아래 WCAG 체크리스트들은 그 개요들을 나타냅니다. -- [WCAG checklist from Wuhcag](https://www.wuhcag.com/wcag-checklist/) -- [WCAG checklist from WebAIM](http://webaim.org/standards/wcag/checklist) -- [Checklist from The A11Y Project](http://a11yproject.com/checklist.html) +- [Wuhcag의 WCAG 체크리스트](https://www.wuhcag.com/wcag-checklist/) +- [WebAIM의 WCAG 체크리스트](http://webaim.org/standards/wcag/checklist) +- [The A11Y Project의 체크리스트](http://a11yproject.com/checklist.html) ### WAI-ARIA {#wai-aria} -The [Web Accessibility Initiative - Accessible Rich Internet Applications](https://www.w3.org/WAI/intro/aria) document contains techniques for building fully accessible JavaScript widgets. +[Web Accessibility Initiative - Accessible Rich Internet Applications](https://www.w3.org/WAI/intro/aria) 문서에는 접근성을 갖춘 JavaScript 위젯들을 만드는 데 필요한 기술들이 담겨있습니다. -Note that all `aria-*` HTML attributes are fully supported in JSX. Whereas most DOM properties and attributes in React are camelCased, these attributes should be hyphen-cased (also known as kebab-case, lisp-case, etc) as they are in plain HTML: +참고로, JSX에서는 모든 `aria-*` HTML 속성들을 지원하고 있습니다. React에서 대부분의 DOM 속성과 속성에 대한 값들이 camelCase로 지원되는 반면, `aria-*`와 같은 속성들은 일반적인 HTML과 마찬가지로 hypen-case(혹은 kebab-case, lisp-case 등)로 작성해야합니다. ```javascript{3,4} ``` -## Semantic HTML {#semantic-html} -Semantic HTML is the foundation of accessibility in a web application. Using the various HTML elements to reinforce the meaning of information -in our websites will often give us accessibility for free. +## 시맨틱 HTML {#semantic-html} +시맨틱 HTML은 웹 어플리케이션에 있어 접근성의 기초입니다. 웹사이트에서 정보에 대한 뜻을 부각시켜주는 HTML 엘리먼트들을 사용한다면, 대부분의 접근성이 갖춰집니다. -- [MDN HTML elements reference](https://developer.mozilla.org/en-US/docs/Web/HTML/Element) +- [참고: MDN HTML 엘리먼트](https://developer.mozilla.org/en-US/docs/Web/HTML/Element) -Sometimes we break HTML semantics when we add `
` elements to our JSX to make our React code work, especially when working with lists (`
    `, `
      ` and `
      `) and the HTML ``. -In these cases we should rather use [React Fragments](/docs/fragments.html) to group together multiple elements. +가끔 React로 구성한 코드가 돌아가게 만들기 위해 `
      `와 같은 엘리먼트를 사용해 HTML의 의미를 깨트리곤 합니다. 특히, 목록(`
        `, `
          `, `
          `)과 HTML `
      `을 사용할 때 문제가 두드러집니다. 이 경우에는, [React Fragment](/docs/fragments.html)를 사용하여 여러 엘리먼트들을 하나로 묶어주는 것을 권장합니다. -For example, +예시는 아래와 같습니다. ```javascript{1,5,8} import React, { Fragment } from 'react'; @@ -73,14 +71,14 @@ function Glossary(props) { } ``` -You can map a collection of items to an array of fragments as you would any other type of element as well: +다른 엘리먼트와 마찬가지로, Fragment는 배열의 각 항목을 매핑할 때에도 사용할 수 있습니다. ```javascript{6,9} function Glossary(props) { return (
      {props.items.map(item => ( - // Fragments should also have a `key` prop when mapping collections + // 항목을 매핑할 때 Fragment는 반드시 `key` prop을 가져야 합니다.
      {item.term}
      {item.description}
      @@ -91,7 +89,7 @@ function Glossary(props) { } ``` -When you don't need any props on the Fragment tag you can use the [short syntax](/docs/fragments.html#short-syntax), if your tooling supports it: +만약, Fragment 태그에 어떤 속성도 필요하지 않고, 사용하고 있는 도구에서 지원한다면, 아래와 같이 [짧게 줄여쓸](/docs/fragments.html#short-syntax) 수 있습니다. ```javascript{3,6} function ListItem({ item }) { @@ -104,83 +102,81 @@ function ListItem({ item }) { } ``` -For more info, see [the Fragments documentation](/docs/fragments.html). +더 자세한 내용은 [Fragment](/docs/fragments.html) 문서를 참고해주시기 바랍니다. -## Accessible Forms {#accessible-forms} +## 접근 가능한 폼 {#accessible-forms} -### Labeling {#labeling} -Every HTML form control, such as `` and `