# 접근 가능한 웹페이지 만들기 ![접근성에 대한 모든 것](../../../../sketchnotes/webdev101-a11y.png) > 스케치노트: [Tomomi Imura](https://twitter.com/girlie_mac) ## 강의 전 퀴즈 [강의 전 퀴즈](https://ff-quizzes.netlify.app/web/quiz/5) > 웹의 힘은 보편성에 있습니다. 장애와 상관없이 모든 사람이 접근할 수 있는 것이 필수적인 요소입니다. > > \- 팀 버너스 리 경, W3C 디렉터 및 월드 와이드 웹 발명가 이 인용문은 접근 가능한 웹사이트를 만드는 것의 중요성을 완벽히 강조합니다. 모든 사람이 접근할 수 없는 애플리케이션은 본질적으로 배제적입니다. 웹 개발자로서 우리는 항상 접근성을 염두에 두어야 합니다. 처음부터 이러한 점에 집중하면, 여러분이 만든 페이지를 모두가 접근할 수 있도록 보장하는 데 큰 도움이 될 것입니다. 이번 강의에서는 웹 자산의 접근성을 보장하는 데 도움이 되는 도구와 접근성을 고려한 개발 방법에 대해 배웁니다. > 이 강의를 [Microsoft Learn](https://docs.microsoft.com/learn/modules/web-development-101/accessibility/?WT.mc_id=academic-77807-sagibbon)에서 수강할 수 있습니다! ## 사용할 도구 ### 화면 읽기 프로그램 가장 잘 알려진 접근성 도구 중 하나는 화면 읽기 프로그램입니다. [화면 읽기 프로그램](https://en.wikipedia.org/wiki/Screen_reader)은 시각 장애가 있는 사용자를 위한 일반적인 클라이언트입니다. 브라우저가 우리가 전달하려는 정보를 제대로 전달하도록 신경 쓰는 만큼, 화면 읽기 프로그램도 동일하게 작동하도록 해야 합니다. 기본적으로 화면 읽기 프로그램은 페이지를 위에서 아래로 소리 내어 읽습니다. 페이지가 모두 텍스트로만 구성되어 있다면, 화면 읽기 프로그램은 브라우저와 유사한 방식으로 정보를 전달합니다. 물론, 웹 페이지는 순수 텍스트로만 구성되지 않습니다. 링크, 그래픽, 색상 및 기타 시각적 요소를 포함합니다. 이러한 정보가 화면 읽기 프로그램에서 올바르게 읽히도록 주의해야 합니다. 모든 웹 개발자는 화면 읽기 프로그램에 익숙해져야 합니다. 위에서 강조했듯이, 이는 사용자가 사용할 클라이언트입니다. 브라우저 작동 방식을 익히는 것처럼, 화면 읽기 프로그램 작동 방식도 배워야 합니다. 다행히 대부분의 운영 체제에는 화면 읽기 프로그램이 내장되어 있습니다. 일부 브라우저에는 텍스트를 소리 내어 읽거나 기본적인 탐색 기능을 제공하는 내장 도구와 확장 기능도 있습니다. 예를 들어 [Edge 브라우저의 접근성 도구](https://support.microsoft.com/help/4000734/microsoft-edge-accessibility-features)가 있습니다. 이러한 도구도 중요한 접근성 도구이지만, 화면 읽기 프로그램 테스트 도구로 오해해서는 안 됩니다. ✅ 화면 읽기 프로그램과 브라우저 텍스트 읽기 도구를 사용해 보세요. Windows에서는 기본적으로 [Narrator](https://support.microsoft.com/windows/complete-guide-to-narrator-e4397a0d-ef4f-b386-d8ae-c172f109bdb1/?WT.mc_id=academic-77807-sagibbon)가 포함되어 있으며, [JAWS](https://webaim.org/articles/jaws/)와 [NVDA](https://www.nvaccess.org/about-nvda/)도 설치할 수 있습니다. macOS와 iOS에서는 [VoiceOver](https://support.apple.com/guide/voiceover/welcome/10)가 기본적으로 설치되어 있습니다. ### 확대 도구 시각 장애가 있는 사람들이 자주 사용하는 또 다른 도구는 화면 확대입니다. 가장 기본적인 확대 방식은 `Control + 더하기 기호 (+)`를 사용하거나 화면 해상도를 낮추는 정적 확대입니다. 이 방식은 페이지 전체를 확대하므로, [반응형 디자인](https://developer.mozilla.org/docs/Learn/CSS/CSS_layout/Responsive_Design)을 사용하여 확대 수준에서도 좋은 사용자 경험을 제공하는 것이 중요합니다. 다른 유형의 확대는 특정 화면 영역을 확대하고 이동하는 특수 소프트웨어를 사용합니다. 이는 실제 돋보기를 사용하는 것과 비슷합니다. Windows에서는 [Magnifier](https://support.microsoft.com/windows/use-magnifier-to-make-things-on-the-screen-easier-to-see-414948ba-8b1c-d3bd-8615-0e5e32204198)가 내장되어 있으며, [ZoomText](https://www.freedomscientific.com/training/zoomtext/getting-started/)는 더 많은 기능과 사용자 기반을 가진 타사 확대 소프트웨어입니다. macOS와 iOS에는 [Zoom](https://www.apple.com/accessibility/mac/vision/)이라는 내장 확대 소프트웨어가 있습니다. ### 대비 검사기 웹사이트의 색상은 색맹 사용자나 저대비 색상을 보기 어려운 사람들의 요구를 충족하도록 신중히 선택해야 합니다. ✅ 브라우저 확장 프로그램인 [WCAG의 색상 검사기](https://microsoftedge.microsoft.com/addons/detail/wcag-color-contrast-check/idahaggnlnekelhgplklhfpchbfdmkjp?hl=en-US&WT.mc_id=academic-77807-sagibbon)를 사용하여 자주 사용하는 웹사이트의 색상 사용을 테스트해 보세요. 무엇을 배울 수 있나요? ### Lighthouse 브라우저의 개발자 도구 영역에서 Lighthouse 도구를 찾을 수 있습니다. 이 도구는 웹사이트의 접근성(및 기타 분석)을 처음으로 확인하는 데 중요합니다. Lighthouse에만 의존해서는 안 되지만, 100% 점수는 기본적으로 매우 유용합니다. ✅ 브라우저의 개발자 도구 패널에서 Lighthouse를 찾아 웹사이트를 분석해 보세요. 무엇을 발견했나요? ## 접근성을 고려한 설계 접근성은 비교적 큰 주제입니다. 이를 돕기 위해 다양한 리소스가 제공됩니다. - [Accessible U - 미네소타 대학교](https://accessibility.umn.edu/your-role/web-developers) 모든 접근성 요소를 다룰 수는 없지만, 아래는 구현해야 할 핵심 원칙들입니다. 처음부터 접근 가능한 페이지를 설계하는 것이 기존 페이지를 나중에 수정하는 것보다 **항상** 더 쉽습니다. ## 좋은 디스플레이 원칙 ### 색상 안전 팔레트 사람들은 세상을 다양한 방식으로 보며, 색상도 포함됩니다. 사이트의 색상 스킴을 선택할 때 모든 사람이 접근할 수 있도록 해야 합니다. [Color Safe](http://colorsafe.co/)는 색상 팔레트를 생성하는 훌륭한 도구입니다. ✅ 색상 사용이 매우 문제가 되는 웹사이트를 찾아보세요. 왜 그런가요? ### 올바른 HTML 사용 CSS와 JavaScript를 사용하면 어떤 요소든 어떤 유형의 컨트롤처럼 보이게 만들 수 있습니다. ``을 사용해 `