접근성 — 모두를 위한 설계가 제일 좋은 설계다
접근성은 소수를 위한 부가 기능이 아니다. 자막은 청각장애인을 위해 태어나 지하철의 모두가 쓰고, 경사로는 휠체어를 위해 태어나 유모차와 캐리어가 쓴다. 장애는 상태가 아니라 상황이기도 하다. 한 손에 아기를 안은 사람, 햇빛 아래의 화면, 시끄러운 카페.
- 키보드만으로 모든 걸 할 수 있어야 한다. Tab으로 이동, Enter로 실행, 포커스는 눈에 보이게. (여기서 Tab을 눌러 보면 민트 테두리가 따라다닌다.)
- 이미지엔 alt, 아이콘 버튼엔 aria-label. 스크린리더는 그것만 읽을 수 있다.
- 대비 4.5:1(6강), 터치 44px(12강). 접근성 기준은 대부분 그냥 좋은 디자인 기준이다.
- 움직임 최소화 설정(
prefers-reduced-motion)을 존중한다. 애니메이션에 멀미하는 사람이 있다. 이 블로그도 그 설정이면 조용해진다. - HTML을 의미대로 쓴다. 제목은
h1~h3, 누르면button, 이동은a.div로 다 만들면 보조기기에겐 백지다.
이름 없음
스크린리더: "버튼" — 무슨 버튼인지 알 수 없다
aria-label 한 줄
스크린리더: "라이트/다크 테마 전환, 버튼"
눈에 보이는 건 똑같다. 차이는 코드 한 줄이고, 누군가에겐 그게 전부다.
접근성 체크리스트는 남을 돕는 목록이 아니라, 내 화면이 험한 상황에서도 살아남게 하는 목록이다.