웹 접근성을 왜 고려 하며 개발을 해야할까? 단순한 전 세계 모든 사용자가 나의 웹 콘텐츠를 사용할 수 있게 하여 나의 서비스 사용자 수를 늘리기 위한 것이 아니라 웹의 근본 철학과도 관련이 있다고 생각한다. 팀 버너스 리가 웹을 발명할 때 가졌던 핵심 비전은 “정보의 보편적 접근”이였다. 웹은 누구나 무료로 사용할 수 있어야 하고, 어떤 플렛폼이나 기기에서든 동작해야 한다. 우리가 웹을 무료로 사용할 수 있는 이유는 웹의 근본 철학 덕분이기 떄문에 후배 개발자로써 이 정신을 이어나가고 지켜야한다고 생각한다.
# 웹 접근성 이란?
웹 접근성은 장애 유무, 기술 환경, 언어, 나이 등과 관계없이 모든 사용자가 웹 콘텐츠를 인식하고, 이해하고, 탐색하고, 상호작용할 수 있도록 보장하는 것을 의미한다.
모든 사람에게 동등한 정보 접근 기회를 제공하기 위해서는 웹 접근성을 고려해야하는데, 청각, 시각, 지적, 운동 장애, 노인, 저사양 장비 사용자, 임시적 장애 등등 고려해야 할 것들이 정말 많다. 또한 단순한 윤리적인 책임만 있는 것이 아니라 이제는 법적 요구사항, 사용자 확대, SEO 향상 등 실질적인 이점들도 있어 웹 개발자라면 반드시 웹을 제작할때 놓치지 말아야 할 것 중 하나이다.
# 왜 웹 접근성을 고려해야 할까?
앞서 설명했듯 웹 접근성을 고려해야 하는 이유는 여러가지가 있다. 자세히 살펴보겠다.
윤리적인 이유
디지털 환경에서 정보 격차를 줄이고, 누구나 평등하게 사용할 수 있는 웹을 만들기 위한 기본적인 책임이다. 내가 생각하기에는 이 부분이 가장 중요하다고 생각한다. 우리가 오늘날 자유롭게 웹 세상을 서핑하고 정보를 얻고 더 나아가 개발자의 삶을 살아갈 수 있게 된 것은 전부 팀 버너스 리의 철학 덕분이다. 따라서 우리는 이 철학을 철저히 따라야 할 의무가 있다고 생각한다
사용자층 확대
나의 서비스를 사용할 수 있는 층이 넓어 진다. 장애인은 전 세계 인구의 약 15% 이상을 차지한다. 시니어, 저사양 장비 사용자, 느린 네트워크 환경에 있는 사용자들도 포함되므로 다양한 웹 접근성을 고려한다면, 더 넓은 사용자층을 얻을 수 있게 되고 이는 사업적인 이윤에도 큰 영향을 줄 것이다. 나의 경우에도 단순하게 생각해보면 어떤 웹 서비스를 이용할때 페이지를 이동할 때마다 버벅이도 정상적으로 동작하지 않는 다면 해당 서비스를 사용하지 않고 다른 웹 사이트를 찾아 나서곤 했다.
법적/정책적 요구사항
미국은 ADA ( 장애인 차별 금지법 )으로, 웹사이트도 접근 가능해여한다고 해석되어 소송 사례가 크게 증가하고 있다. 한국도 마찬가지고 장애인 차별금지 법안이 생겨 장애인의 정보 접근권을 보장하며, 웹이트 접근성 준수를 의무화하고 있다. 이 정책들은 대부분 WCAG ( Web Content Accessibility Guidelines ) 기준을 따르고 있고, 공공기관은 더 엄격한 준수 의무를 가진다. 민간 기업도 점차 법적 책임이 증가되고 있다.
SEO와 사용자 경험 향상
웹 접근성을 고려한 구조는 시맨틱한 HTML, alt 텍스트, 명확한 네비게이션을 포함하므로 검색엔진 최적화(SEO)와 사용성에도 도움이 된다. 시맨틱한 HTML 구조는 스크린 리더가 페이지 구조를 이해하고 사용자에게 명확히 전달할 수 있고, SEO 측면에서는 검색엔진이 콘텐츠의 계층 구조와 중요도를 정확히 파악할 수 있게 해준다. alt 텍스트도 다양한 이점이 있다. 시각 장애인이 이미지 내용을 이해할 수 있고, 검색엔진이 이미지를 인덱싱하고 이미지 검색 결과에 노출하는데 도움이 된다.
# 웹 접근성을 지키는 방법
HTML 작성
•시맨틱한 태그 사용 : <header>, <nav>, <main> <section> <footer>
•alt 속성 : 이미지에는 반드시 적절한 alt 텍스트 제공
•form 요소 label 연결 : <label for=”id”>
•button 요소 사용 : 클릭 가능한 모든 요소는 <button> 또는 role=”button” + 키보드 이벤트 제공
키보드 접근성
•모든 인터렉션은 반드시 키보드로도 사용 가능해여함
•탭 순서를 고려한 tabIndex 사용
•focus 스타일 지정 ( 접근성 숨김 요소에 outline: none 주의)
ARIA 속성
•WAI-ARIA는 접근성 향상을 위한 보조 속성이다.
•적절한 role, aria-label, aria-hidden 등을 활용
•과도한 사용은 오히려 문제를 야기하므로, 시맨틱한 HTML을 우선 고려해여한다.
애니메이션
•사용자가 원치 않으면 애니메이션을 끌 수 있는 옵션 제공
•prefers-reduced-motion 미디어 쿼리 지원
웹 접근성이 웹 개발을 하면서 중요하다는 것을 알게 되었다. 특히 우리가 이런 다양한 서비스와 정보들을 자리에 앉아서 누릴 수 있게 해준 팀 버너스 리의 철학이 개발자로서 많은 것을 느끼게 해주었다. 앞으로는 웹 프로젝트를 진행하면서 웹 접근성을 잘 고려하며 작업을 할 것 같다. 웹 접근성에 대해 소개 링크