본문으로 건너뛰기

버그 제보

이상한 점을 알려 주시면 고칠게요. 지금 보고 있는 페이지와 브라우저 정보가 함께 담겨요.

페이지:

Frontend

Accessibility

작성 2026. 10. 20.추가
목차10개 항목
출처와 참고

웹액츄얼리가 번역한 유리 파즈(Uri Paz)의 「접근성과 사용성 엮어내기」(2020.12), 비 버챌(Be Birchall)의 「컨텍스트에서의 웹 접근성」(2019.12), 로빈 크리스토퍼슨(Robin Christopherson)의 「코로나 시대의 글로벌 디지털 접근성 개발」(2021.02)을 바탕으로 재구성하고, ARIA 원칙은 버사요 새뮤얼(Busayo Samuel)의 「Mastering Web Accessibility」(DEV, 2023.04)로, 사람·비즈니스·법에 주는 영향은 web.dev 「Learn Accessibility」 강좌로, 더 읽을 자료는 AOA11Y의 「2024년 제2회 정보접근성 오픈아카데미」(2024.07) 1부로 보강했다.

웹 접근성 주제는 누구나 같은 정보와 기능에 닿을 수 있게 만드는 방법을 다룬다. 장애 유형별로 웹을 어떻게 쓰는지에서 출발해, WCAG라는 기준선, 마크업·스크립트·스타일 단계의 기법, 그리고 결과를 확인하는 평가 방법 순으로 읽으면 이어진다. 시맨틱 태그 자체는 시맨틱 HTML과 문서 구조에, role과 접근 가능한 이름으로 테스트를 짜는 법은 접근성 기반 UI 테스트 자동화에 있다.

노트

웹 접근성이란

웹 접근성은 장애가 있는 사람도 웹을 인지하고, 이해하고, 탐색하고, 상호작용하고, 기여할 수 있게, 그것도 다른 사람과 동등한 수준으로 만드는 일이다. accessibility의 첫 글자와 끝 글자 사이 11글자를 줄여 a11y라고 쓴다. 대상은 시각 장애만이 아니다. 청각, 인지, 신경, 신체, 말하기 장애가 모두 포함된다.

세계보건기구는 장애를 개인의 속성이 아니라 능력과 환경의 불일치로 정의한다(사회적 정의). 이 관점에서는 장애와 보조 기술의 경계가 맥락에 따라 달라지고, 특정 능력을 위한 설계가 모두에게 쓸모 있어지는 일이 많다(휠체어용 경사로를 유모차도 쓴다).

접근성은 소수를 위한 추가 작업이 아니라 더 넓은 사용자를 위한 설계다. 표준 지식, 접근 가능한 디자인과 코드, 여러 테스트 기법이 필요해 리더십의 지지·시간·예산이 더 들므로, 기획·디자인·개발·운영의 전 주기에 장애가 있는 사람과 접근성 원칙을 넣는다.

현실은 멀다. WebAIM이 해마다 상위 100만 개 사이트의 홈페이지를 자동 검사하는 WebAIM Million의 2026년 결과에서 95.9%가 WCAG 2 실패를 하나 이상 갖고 있었고, 페이지당 평균 오류는 56.1개였다. 흔한 순서는 낮은 텍스트 대비(83.9%), 이미지 대체 텍스트 누락(53.1%), 폼 라벨 누락(51%), 빈 링크(46.3%), 빈 버튼(30.6%)이다. 대부분 마크업만 고쳐도 사라지는 문제다.

사람·비즈니스·법

관점내용
사람세계 인구의 약 16%(13억 명)가 상당한 장애를 겪는다(WHO). 고령화와 만성 질환으로 늘고 있다. 일시적·상황적 장애까지 치면 혜택을 보는 사람은 훨씬 많다
비즈니스장애인과 그 가족·친구까지 합치면 큰 소비자 집단이다. 미국연구소(AIR)는 미국 생산 가능 연령 장애인의 연간 세후 가처분 소득을 약 4,900억 달러로 추정했다. 장애인을 위해 시작된 기술(자동문, 음성 제어)이 모두의 제품이 되기도 한다
법공공·민간 모두에 접근성을 요구하는 나라가 늘고 있다. 명시적 기준이 약한 미국에서는 소송이 변화를 끌어내는 주된 수단이고, 소송은 전자상거래 사이트와 앱에 몰린다. 국제 기준은 WCAG 2.2이고 법·조달 기준은 보통 AA다. 나라별 법은 WCAG와 POUR 원칙에 있다

소송을 피하는 것이 유일한 이유가 되어서는 안 되지만, 무시할 수 없는 이유다.

보조 기술은 웹을 어떻게 읽나

스크린 리더, 점자 디스플레이, 시선 추적 같은 대체 입력 장치가 웹을 쓰는 보조 기술이다. 그중 스크린 리더가 기술적으로 가장 까다롭다. 화면의 시각 단서 없이 "이건 버튼인가", "어떤 순서로 읽나", "제목만 훑을 수 있나"에 답해야 하기 때문이다.

시기방식한계
1980년대텍스트 화면 버퍼를 그대로 소리로 변환GUI 등장 후 쓸 수 없음
1990년대 초오프스크린 모델: OS의 그래픽 명령을 가로채 휴리스틱으로 "버튼 같다"를 추측OS 종속적이고 추측이 자주 틀림
1990년대 후반~시맨틱 웹: HTML이 구조·의미를 표현과 분리해 담고, 브라우저가 접근성 API로 넘김개발자가 의미에 맞게 마크업해야 동작

지금 브라우저는 DOM을 파싱해 화면을 그리는 동시에 접근성 트리(accessibility tree)를 만든다. 트리의 노드는 role(버튼), name(버튼 텍스트), state(포커스됨) 같은 속성을 갖고, 스크린 리더는 이 값을 읽는다.

flowchart LR
  html["HTML"] -->|"파싱"| dom["DOM"]
  dom --> render["렌더링"]
  render --> screen["화면"]
  dom --> tree["접근성 트리"]
  tree --> api["접근성 API"]
  api --> at["스크린 리더 · 점자 장치"]
  • h1~h6는 heading 노드가 된다. 스크린 리더 사용자가 가장 흔히 쓰는 정보 탐색 방법이 제목 훑기다.
  • 아이콘만 있는 버튼에는 aria-label, 이미지에는 alt로 name을 준다. 다만 ARIA는 의미만 더하고 동작은 하나도 더하지 않으므로, 같은 의미의 네이티브 요소가 있으면 그것을 먼저 쓴다.
  • Chrome DevTools의 접근성 패널에서 접근성 트리 전체를 볼 수 있다.
  • 머신러닝이 이미지 대체 텍스트를 자동 생성하는 등 트리에 들어갈 데이터를 보강하기 시작했지만, 개발자가 넣는 의미가 기본이다.

이 방식의 약점은 개발자가 의도에 맞는 태그와 속성을 써야만 동작한다는 점이다. 그래서 웹 접근성의 가장 큰 장벽은 기술 한계가 아니라 인식과 우선순위의 부족이다.

표준을 지켜도 쓰기 어려울 수 있다

WCAG를 통과해도 너무 가는 글자 굵기, 이해하기 어려운 날짜 선택 UI, 확대 시야 밖에 뜨는 다음 단계, 너무 긴 aria-label처럼 기준에 걸리지 않는 문제로 과제를 끝내지 못할 수 있다. 표준은 필요조건이지 충분조건이 아니다. 체크리스트만 보면 사람 사이의 상호작용을 놓친다. 그래서 접근성은 사용성과 함께 본다. 제이컵 닐슨의 사용성 5요소가 기준이 된다.

요소질문
학습 용이성처음 본 사람이 기본 동작을 쉽게 하나
효율성익숙해진 뒤 얼마나 빨리 끝내나
기억 용이성오랜만에 와도 다시 배우지 않고 쓰나
오류오류가 얼마나 자주·심각하게 나고, 쉽게 복구되나
만족도주관적으로 만족하나

장애인 참가자와 사용성 테스트하기

단계할 일
목표·과제디자이너·PM·개발자·QA가 함께 목표를 정한다. 보조 기술 사용자는 과제가 오래 걸리므로 중요한 과제부터 고르되, 복잡한 절차를 테스트용으로 단순화하지 않는다
일정이동 동행, 보조 기술 설정 시간까지 잡는다. 세션 사이에 1시간 정도 여유를 둔다
모집병원·특수학교·정보 접근 센터를 통해 찾는다. 사용 기기·브라우저·보조 기술, 녹화와 관찰자 여부, 접근 가능한 보상을 미리 알린다
환경참가자가 장비를 가져오기 어려우면 NVDA·JAWS·ZoomText 같은 도구를 준비한다. 계단 없는 입구, 화장실, 안내견 자리까지 확인한다
리허설일주일 전 실제 참가자와 리허설한다. 화면 공유 도구와 보조 기술의 충돌 같은 문제를 미리 잡는다
진행스크린 리더 소리가 관찰을 방해하므로 참가자에게 생각을 크고 분명하게 말해 달라고 한다
결과버그(스크린 리더가 버튼 상태를 알리지 않음), 콘텐츠(폼 오류를 알아채지 못함), 시각 환경(확대 시 다음 단계가 시야 밖) 문제로 나눠 보고한다. 잘된 점도 남긴다

테스트의 진짜 효과는 보고서보다 관찰한 팀원의 관점 변화다. 장애인 인권 운동의 구호 "우리 없이 우리에 대해 결정하지 말라(Nothing About Us Without Us)"는 사용자 중심 디자인과 같은 뿌리다. 리서치 방법 전반은 사용자 리서치에 있다.

바로 할 수 있는 다섯 가지

  1. 마우스를 치우고 키보드로만 써 본다. 포커스 표시가 항상 보이고, 포커스 순서가 논리적이어야 한다.
  2. 낮은 대비를 피한다. 눈으로 먼저 거슬리는 곳을 찾고 대비 검사 도구로 확인한다. WCAG에 글자 크기 최솟값은 없지만, 브라우저에서 200%로 키워도 내용이 잘리지 않아야 하므로(성공 기준 1.4.4) 글자 크기는 px보다 rem으로 준다.
  3. 자동 검사를 돌리고 스크린 리더로 들어 본다. axe DevTools, Lighthouse, WAVE, Accessibility Insights가 라벨 누락 같은 문제를 빨리 잡지만 일부 문제만 찾는다. 키보드로 끝까지 할 수 있는지, 읽는 순서가 자연스러운지는 사람이 확인한다. Windows는 무료 NVDA, macOS·iOS는 내장 VoiceOver로 들어 보고, 접근성 트리·계산된 이름·소스 순서는 Chrome DevTools로 확인한다(DevTools로 DOM과 CSS 다루기).
  4. 접근성 페이지를 둔다. 취한 조치와 문제를 알릴 연락처를 밝힌다.
  5. 쉬운 말로 쓴다. 전문용어를 줄이고, 제목·문단·목록으로 나누고, 한 문단에 요점 하나를 둔다.

"월 얼마에 100% 준수"를 약속하는 오버레이 솔루션은 지름길이 아니다(접근성 평가 방법과 도구). 접근성에는 교육과 우선순위 외에 지름길이 없다.

조직 차원의 접근성

접근성은 한 팀의 체크리스트가 아니라 조직의 우선순위다.

원칙내용
결정권자 중에 당사자를 둔다장애가 있는 리더나 최고접근성책임자(CAO) 같은 역할이 있으면 우선순위가 유지된다
장애인을 위한 해결책을 확장한다포용을 위해 만든 기능(회의 앱의 「손 들기」)이 결국 모두에게 쓰인다
실제 사용 데이터를 본다큰 글꼴·확대·고대비 설정 비율 같은 통계는 접근성 투자의 근거가 된다
당사자 네트워크를 만든다장애가 있는 동료가 디자이너와 직접 이야기하면 이론 교육보다 효과가 크다
전문가를 키운다모든 직군이 기준을 익힐 때까지 접근성 전문가와 교육 과정이 필요하다
장애가 있는 사람을 채용한다감사·자문만으로는 매일의 결정에 당사자 관점이 들어가지 않는다

더 읽을 자료

자료쓰임
W3C WAI, WCAG 2.2 Quick Reference표준과 성공 기준별 기법
MDN AccessibilityHTML·ARIA·CSS 기법
W3C Web Accessibility Laws & Policies나라별 법
Deque University강좌와 참고 자료
Google 개발자 문서 스타일 가이드: 접근 가능한 문서문서·글쓰기의 접근성
Accessibility Developer Guide(ADG) (한국어 번역)개발자용 단계별 안내. 스크린 리더 설정부터 예제·CodePen까지 처음부터 차례로 읽게 짜여 있다
WCAG 2.2 한국어 번역원칙 → 지침 → 성공 기준 구조가 어려울 때 우리말로
WCAG.com, Pearson 접근성 가이드라인성공 기준을 개발자·디자이너·작성자 역할별로, 또는 누구에게 이로운지와 예시로 풀어 준다
AccessGuide지침을 그림 카드와 좋은 예·나쁜 예 비교로 보여 준다
CSUN Universal Design Center대체 텍스트처럼 맥락에 따라 답이 달라지는 항목을 예시로 설명
ARIA Authoring Practices Guide(APG) (한국어 번역)위젯 패턴별 role·상태·키 조작과 동작 예제
NULI(널리), 부스트코스 「웹 접근성의 이해」, 사람인 접근성 가이드한국어 자료. 장애 체험, 한국형 지침(KWCAG) 무료 강좌와 퀴즈, 직무별 체크리스트

정리

  • 장애는 능력과 환경의 불일치다. 접근성은 결국 더 많은 사람을 위한 설계다.
  • 브라우저는 시맨틱 HTML로 접근성 트리를 만든다. 의미에 맞는 마크업이 보조 기술 지원의 기본이고, ARIA는 네이티브 요소로 안 될 때만 쓴다.
  • 접근성은 사람·비즈니스·법 모두의 문제이고, 기획부터 운영까지 전 주기의 일이다.
  • WCAG는 최소선이다. 지켜도 쓰기 어려울 수 있으니 장애인과 직접 테스트한다.
  • 자동 검사와 오버레이는 보조 수단이다. 키보드 테스트와 사람의 판단이 필요하다.
  • 가장 큰 장벽은 기술이 아니라 우선순위다.

관련 주제: 시맨틱 HTML과 폼 사용성(더 나은 폼을 만드는 팁)은 Web, 접근성 기반 테스트는 Testing 주제에 있다.

원본 기록11

이 주제의 항목 · 15

댓글

GitHub 계정으로 댓글을 남길 수 있어요.