아티클

WAI-ARIA 1.2 업데이트 내용 알아보기 2부: 기존 명세의 변경사항

2020-05-26 11:22:28

안녕하세요. 엔비전스입니다.

지난 아티클인 WAI-ARIA 1.2 업데이트 내용 알아보기 1부 : 추가된 역할 알아보기에서는 WAI-ARIA 1.2에서 추가된 역할에 대해 알아보았습니다. WAI-ARIA 1.2에서는 새로운 역할의 추가뿐만 아니라, 크고 작은 변경사항들이 존재합니다.

2부에서는 이러한 기존 명세의 변경사항에 대하여 알아보도록 하겠습니다.

 

변경사항 목록

  1. 새로운 역할이 추가되었습니다. WAI-ARIA 1.2의 새로운 역할은 지난 아티클을 참고해 주시기 바랍니다.
  2. combobox의 마크업 양식이 변경되었습니다. 자세한 사항은 다음섹션에서 다룹니다.
  3. 다음 역할에 레이블 사용을 금합니다.
  4. 다음과 같은 상태 정보 속성이 global 속성에서 widget 계열의 역할에만 사용되도록 범위가 축소되었습니다.
  5. checkbox menuitemcheckbox menuitemradio switch의 기본 속성값(false)이 제거되었습니다.
  6. checkbox 역할에 aria-required 속성이 추가되었습니다.
  7. checkbox 역할과 application 역할에 aria-expanded 상태 정보 속성이 추가되었습니다.
  8. range 역할의 상속 클래스가 widget에서 structure로 변경되었습니다.
  9. 다음과 같은 역할에서 불필요한 aria-expanded 속성이 제거되었습니다.
  10. logtimer 역할에 대한 접근성 이름(accessible name) 제공이 선택 사항으로 변경되었습니다.
  11. listbox 역할에서 group 역할을 하위 항목으로 두는 것이 허용되었습니다.
  12. directory 역할이 더는 사용하지 않습니다.
  13. 이제 form 역할에 접근성 이름(accessible name)을 반드시 제공해야 합니다.
  14. 목록 내 그룹의 개수 제한이 해제되었습니다.
  15. treegrid 역할의 자손인 row 역할에 aria-posinset 속성과 aria-setsize 속성을 허용합니다.
  16. treegrid 역할에서 aria-level 속성이 제외되었습니다.
 

WAI-ARIA 1.2의 combobox 마크업 패턴 변화

combobox 역할은 WAI-ARIA 1.2의 변경사항 중 가장 큰 변경사항으로 지난 버전의 마크업 패턴으로 인해 생기는 몇 가지의 치명적인 문제점들에 의해 패턴을 변경하게 되었습니다.

 

이전 패턴의 문제점

WAI-ARIA combobox 구조에서는 사용자 친화적 요소 이름(Accessible name: 이하 접근성 이름)을 가질 수 있는 요소가 세 가지 있습니다. Role=”combobox” 속성이 사용된 div 컨테이너, combobox 컨테이너 내부에 있는 텍스트 입력상자, 마지막으로 option 항목을 나열하기 위한 listbox 컨테이너가 있습니다. 이 세 요소는 접근성 이름을 제공할 수 있지만, 이 중 input 요소는 반드시 접근성 이름을 제공해야 한다는 웹 표준 지침을 따르지 않는 문제가 제기되었습니다.

기존에는 위 문제를 해결하고자, 세 가지 요소에 모두 레이블을 제공하는 것으로 대처하였으나 combobox와, input, listbox에 전부 레이블을 제공했을 때 스크린 리더에서 너무 많은 정보를 장황하게 읽는 문제가 발생하게 되었습니다.

 

변경사항

WAI-ARIA 1.1에서 제기된 문제점을 해결하고자 이번 WAI-ARIA 1.2에서는 input을 컨테이너로 감싸지 않고, combobox 역할로 바로 제공하는 디자인 패턴을 사용합니다. 이는 WAI-ARIA 1.0의 패턴과 유사하지만, aria-owns를 쓰지 않는 것이 다른 부분입니다.

 

위와 같이 마크업이 변경됨에 따라 input이 표준과 맞지 않는 문제점이 해결되었으며 combobox 컨테이너 하위에 input 상자가 있었던 구조를 단순화하여 불필요한 유형 및 레이블이 제공되지 않게 되었습니다.

이번 아티클을 마지막으로 WAI-ARIA 1.2의 변경사항에 대해 모두 소개해 드렸습니다. 아직 변경사항에서 언급한 모든 역할과 속성을 다루지 못했기 때문에 와닿지 않는 부분이 있었을 것으로 생각합니다.

이러한 부분에 대해서는 양해 부탁드리며, 변경사항에서 언급된 역할과 속성들은 WAI-ARIA 바르게 사용하기를 통해 모두 다룰 수 있도록 노력하겠습니다. 읽어주셔서 감사합니다.

새 창으로 열기
댓글 0
댓글을 작성하려면 해주세요.