웹 접근성 기술 학습

2024. 3. 16. 15:15·Web
반응형

 

웹 접근성 공부를 위해서 공부한 내용 시리즈

▶ 2024.02.17 - [Web] - 웹 표준, 웹 호환성, 웹 접근성

▶ 2024.02.21 - [Web] - 웹 접근성 시나리오

▶ 2024.02.25 - [Web] - 웹 접근성이 왜 필요할까?

▶ 2024.03.16 - [Web] - 웹 접근성 기술 학습 <= 현재 글

▶ 2024.03.20 - [Web] - 웹 접근성 시나리오 - 2

▶ 2024.03.24 - [Web] - 랜드마크 롤

▶ 2024.03.27 - [Web] - WAI-aria

▶ 2024.03.31 - [Web] - 웹 접근성 시나리오 - 3

▶ 2024.04.04 - [Web] - 사용자가 입력하는 이미지

▶ 2024.04.06 - [Web] - 구글 SEO


 

웹 접근성이 중요한 것은 충분하게 공부한 것 같다. 

이제 웹 접근성을 위해서 스크린리더에 잘 읽히게 하려면 어떤 방법들이 있을까? 

  1. 웹 표준 태그를 사용한다.
  2. 웹 페이지에 맞는 lang 속성을 사용한다.
  3. 의미적인 태그를 사용한다.
  4. 선형적인 마크업을 작성한다.
  5. 트리 구조를 명확히 한다.
    => <div><div><div></div></div></div> 같이 꼭 사용할 필요 없는 div는 지양한다. 
         스크린리더가 어떻게 읽을지 예상할 수 없기 때문이다. 
  6. 태그의 네이티브 기능을 학습하고 이를 구현한다. 

지금까진 이런 방법들을 자연스럽게 이해했다. 

추가적으로 다음과 같은 방법으로 웹 접근성을 높일 수 있다. 

 

outline

 

outline : 0;

 

디자인을 위해서 우리는 outline을 0으로 처리하는 경우가 있다. 

이러한 작업은 웹 접근성에서 좋지 않는 방법이다. 

네이버에서 검색 버튼에 outline으로 초점을 나타내는 모습

 

탭키를 눌렀을 때 outline을 0으로 하면 보이지 않는다. 

우리가 시각 장애인이라고 이야기할 때 전맹 ( 완전히 보이지 않는 분들 )의 비율은 5%이다. 

그 외에는 흐릿하게라도 보이는 분들이다. 

 

이 경우에는 포커스를 통해서 내가 어디에 있는지 알 수 있기 때문에 가능한 사용하는 것이 좋다. 

outline 말고도 box-shadow, dropshadow, background, text color 등으로 구현할 수도 있다. 

 

중요한건 Tab 키가 왔을 때 현재 어디에 포커스가 있는지 알 수 있으면 된다. 

 

IR 기법

웹 접근성을 지키기 위해서 아주 많은 도움이 되는 개념이다. 

naver의 blind 클래스

 

css 설정으로 인해서 화면에는 보이지 않지만 스크린리더는 읽어주게 하기 위해서 사용한다. 

일반적으로 reset-css를 사용하고 바로 다음에 선언하는 css 이다. 

 

이때 blind 말고 visually-hidden, sr-only, for-a11y 같은 명칭으로 사용하기도 한다. 

blind는 맹인이라는 뜻으로 의미 자체가 비하의 의미로 사용될 수 있다고 한다. 


※ a11y ? 

a11y 라는 단어가 있는데 이것은 무슨 뜻일까? 

접근성을 의미하는 accessibility 라는 단어 자체가 접근성이 좋지 않기 때문에 a와 y 사이에 11개의 문자가 있다고 

a11y라고 한다 ㅋㅋ


별점이 포함된 리뷰

 

UI에서 IR이 필요한 곳이 어디일까?? 

범위가 좁기 때문에 대부분 알텐데 바로 별표이다. 안보이는 사람들한테 이런 별표는 아무런 의미가 없을 것이다. 

<div>
  <img src="..." alt=""/>
  <span class="blind">평점 별 5점 중</span> 5
</div>

다음과 같이 IR 처리를 해줄 수 있을 것이다. 

 

 

반응형
저작자표시 비영리 변경금지 (새창열림)

'Web' 카테고리의 다른 글

랜드마크 롤  (0) 2024.03.24
웹 접근성 시나리오 - 2  (0) 2024.03.20
웹 접근성이 왜 필요할까?  (1) 2024.02.25
웹 접근성 시나리오  (1) 2024.02.21
웹 표준, 웹 호환성, 웹 접근성  (0) 2024.02.17
'Web' 카테고리의 다른 글
  • 랜드마크 롤
  • 웹 접근성 시나리오 - 2
  • 웹 접근성이 왜 필요할까?
  • 웹 접근성 시나리오
잉여개발자
잉여개발자
풀스택 개발자를 목표로 잉여롭게 개발 공부도 하면서 다양한 취미 생활도 즐기고 있는 잉여 개발자입니다.
  • 잉여개발자
    잉여로운 개발일지
    잉여개발자
    • 분류 전체보기 (789)
      • 개발정보 (36)
      • 개발환경 (7)
      • 개발생활 (19)
      • React (141)
        • 이론 (23)
        • 기능 (12)
        • 실험실 (88)
        • 버그 (6)
        • 패스트캠퍼스 (9)
        • Npm (3)
      • React Native (28)
        • 공통 (6)
        • TypeScript (3)
        • JavaScript (18)
        • 버그 (1)
      • Next.js (30)
        • 이론 (13)
        • 실험실 (13)
        • 버그 (3)
      • Web (35)
      • 알고리즘 (202)
        • 풀이 힌트 (39)
      • JavaScript (47)
      • TypeScript (29)
        • 기초 (27)
        • 실험실 (2)
      • Node.js (13)
        • 이론 (0)
        • 기능 (3)
        • 실험실 (9)
        • 버그 (1)
      • 도커 (4)
      • CCNA (22)
        • 이론 (4)
        • 문제 (18)
      • 취미생활 (167)
        • 잉여로운 칵테일 (2)
        • 잉여의 식물키우기 (130)
        • 잉여로운 여행기 (11)
        • 잉여의 제2외국어 (21)
        • 잉여로운 책장 (2)
      • Java (1)
        • Java의 정석 (1)
      • 꿀팁 공유 (3)
  • 태그

    영어독학
    네트워크
    javascript
    redux
    ChatGPT
    영어회화
    리얼클래스
    다이소
    typescript
    알고리즘
    프로그래머스
    ReactNative
    네이버 부스트캠프
    리얼학습일기
    webpack
    자바스크립트
    CSS
    react
    식물
    Node.js
    Docker
    리액트
    next.js
    Babel
    타입스크립트
    덤프
    CCNA
    바질 키우기
    타일러영어
    바질
  • hELLO· Designed By정상우.v4.10.1
잉여개발자
웹 접근성 기술 학습
상단으로

티스토리툴바