WCAG 2.1 항공사 WAI-ARIA 적용 사례
  • 모두를 위한 디자인
  • 항공사의 웹 접근성 준수 의무
  • 국내 접근성과 국제 접근성은 어떻게 다를까?
  • 항공사 접근성 위배로 인한 벌금 부과 사례
  • AOA 2023~
    • 주요 UI별 ARIA 적용 사례 (2022~2024)
      • 호버 콘텐츠 적용사례
      • 입력 글자 수 제한 사례
      • 🕹️Form 그룹의 오류 적용 사례
      • 비밀번호 실시간 오류 적용 사례
      • 🖼️SVG 이미지의 접근성 향상 방법
      • 오류메시지 종류별 적용 사례
      • 스낵바(Snack bar) 적용 사례
  • AOA 2019
    • 주요 UI별 ARIA 적용 사례 (2019)
      • 스핀 버튼 적용 사례
      • 페이지 네비게이터 적용 사례
      • 메인 네비게이션 구현 사례
      • 메뉴 적용 사례
      • 캐러셀 적용 사례
      • 채팅 상담 적용 사례
      • 툴팁 적용 사례
      • 그룹명 필수 항목 적용 사례
      • 이해하기 쉬운 데이터 테이블 적용 사례
      • 날짜 입력 적용 사례
    • 알아두면 좋은 TIP!
      • dl, dt, dd 태그를 남용하지 마세요.
      • 제발 나를 무시해 주세요.
      • 띄어쓰기를 주의하세요!
  • AOA 2018
    • 주요 UI별 ARIA 적용 사례 (2018)
      • 로딩 적용 사례
      • Date Picker 적용사례
      • 좌석선택 적용사례
      • 탭 UI 적용 사례
      • 모달 다이얼로그 적용 사례
      • 확장과 축소 콘텐츠 적용 사례
      • 정렬할 수 있는 table 적용 사례
      • 자동완성 적용 사례
      • 접근성 주요 개선 항목
        • 버튼을 왜 링크로 쓰는거지?
        • 그룹에게는 그룹명을 알려주자
        • 에러메세지는 왜 보이기만 하지?
        • 이해하기 어려운 폼 레이블
        • 화면을 보는 스크린리더 사용자
        • 전환되지 않는 페이지의 포커스
        • 동일한 기능의 서로 다른 UI
    • 알아두면 좋은 것들
      • role=application은 언제 사용할까?
      • 대문자로만 표현해야 할 때
      • 화면의 정렬을 위해 중복 태그를 사용하지 말 것
    • Screen Reader 테스트
      • Screen Reader와 Browser 조합
      • Screen Reader 버그
  • WAI-ARIA
    • Landmark Role
    • Widget Role & Attributes
  • Contact
    • 무엇이 궁금하세요?
Powered by GitBook
On this page
  • 호버 콘텐츠는 툴팁과 같이 마우스 호버일 때 추가로 보여지는 콘텐츠를 의미하며, WCAG2.1 에서는 아래 3가지를 모두 준수해야 한다고 정의되어 있다.
  • 기내 어매니티를 툴팁으로 제공하는 방법!
  • title 속성과 똑같은 기능 아닌가요? title로 쓰면 안되나요?

Was this helpful?

Edit on Git
  1. AOA 2023~
  2. 주요 UI별 ARIA 적용 사례 (2022~2024)

호버 콘텐츠 적용사례

WCAG2.1의 1.4.13 Content on Hover or Focus

Previous주요 UI별 ARIA 적용 사례 (2022~2024)Next입력 글자 수 제한 사례

Last updated 2 years ago

Was this helpful?

호버 콘텐츠는 툴팁과 같이 마우스 호버일 때 추가로 보여지는 콘텐츠를 의미하며, WCAG2.1 에서는 아래 3가지를 모두 준수해야 한다고 정의되어 있다.

  1. 호버 콘텐츠를 삭제할 수 있는 방법을 제공해야 한다.

  2. 호버 콘텐츠가 사라지지 않은 상태로 호버 콘텐츠 위로 포인터를 이동시킬 수 있어야 한다.

  3. 사용자가 호버 콘텐츠를 닫거나 마우스 호버나 키보드 포커스가 제거되기 전까지 호버 콘텐츠는 계속 보여져야 한다.

기내 어매니티를 툴팁으로 제공하는 방법!

대한항공 항공편 선택 페이지에서는 항공편명 정보를 탐색하다가 "상세 보기" 버튼을 누르면 해당 편명에서 제공하는 어매니티를 볼 수 있다. 이 콘텐츠는 호버 콘텐츠로 마우스 커서나 키보드 포커스가 이동하면 상세 설명이 텍스트로 노출되는 형태로 다음 영상과 같이 구현되어 있다.

위 영상처럼 마우스 호버나 키보드 포커스를 받으면 추가 콘텐츠가 노출되는 형태는 WCAG2.1의 1.4.13. Content on Hover or Focus 와 관련이 깊다. 비장애인은 마우스를 이용하여 바로 노출되는 콘텐츠를 쉽게 볼 수 있지만 키보드 사용자나 스크린리더를 사용하는 시각장애인도 추가 콘텐츠를 쉽게 인식할 수 있도록 제작되어야 한다.

이 콘텐츠를 <div>태그로 구현한다면 코드는 다음과 같다.

role="tooltip"은 스크린리더에서 호환성이 떨어져 사용하지 않았다.

<div class="tooltip" aria-disabled="true" role="button" tabindex="0">
    <span aria-hidden="true" class="flight-plan__amenity"></span> // 아이콘
    <div class="tooltip__desc">
        <span class="tooltip__text">기내 전원 공급 장치</span>
    </div>
</div>

위 코드를 보면 기내 어메니티를 <div> 태그로 감싸고 tabindex="0"을 삽입하여 키보드 포커스 이동할 수 있게 하였다. 또한 아무 의미가 없는 <div>가 포커스를 가지게 되면 스크린리더 사용자는 당황할 수 밖에 없고 이 태그가 어떤 역할인지 이해하기 어렵게 되므로 role="button"을 삽입하여 이 태그가 버튼의 역할을 수행하고 있다는 것을 알려야 한다.

버튼으로 구현되었지만 화면에서의 변화만 있는 역할만 하기 때문에 aria-disabled="true"를 삽입하여 이 버튼이 활성화되지 않는다는 것을 스크린리더에게 알릴 수 있다.

화면에 보이는 것은 콘센트 아이콘이지만 스크린리더가 읽어야 하는 것은 "기내 전원 공급 장치"이므로 말풍선 형태로 보이는 텍스트를 버튼 텍스트로 삽입하면 해당 버튼에 스크린리더가 이동하면 "기내 전원 공급 장치"로 인지하게 된다.

title 속성과 똑같은 기능 아닌가요? title로 쓰면 안되나요?

<button id="search_btn" type="submit" title="검색" tabindex="3" class="btn_submit" onclick="window.nclick(this,'sch.action','','',event);" style="">
    <span class="blind">검색</span>
    <span class="ico_search_submit"></span>
</button>

위 예제와 같이 title 속성을 사용하면 마우스 호버 시 비장애인에게는 시각적 정보로 보여줄 수 있지만, 호버 콘텐츠 위로 포인터가 이동하지 않고 키보드 포커스가 이동해도 보여지지 않기 때문에 장애인에게 동등한 정보를 제공해 주기 어렵다..com

또한 모바일과 같은 디바이스는 호버가 동작하지 않기 때문에 사용성에 더욱 좋지 않으므로 title 속성으로 대체 제공하는 것은 부적절한 방법이다.

네이버
Logo