[HTML/CSS] Carousel 과 wai-aria
Carousel 과 wai-aria
Carousel을 마크업할 때는 무엇보다 접근성에 더 신경써서 작성을 하는 것이 중요합니다.
스크린리더를 사용하는 보조기기 사용자의 경우 이미지가 바뀌었는지, 현재보여지는 이미지가 무엇인지?, 이미지안에 있는 내용은 어디인지를 명확하게 이해하기가 어려울 수 있습니다.
W3-Wai-aria에서 Carousel디자인 패턴에서 어떤 기능들이 필요하며, 키보드 인터랙선은 어떻게 제공해야하는지 그리고 wai-aria 관련한 상태, 속성, 적용방법들을 확인할 수 있으며 실제 예시를 살펴볼 수도 있습니다.(HTML Source Code도 제공됩니다.)
<div class="carousel" role="region" aria-roledescription="carousel" aria-label="생활용품 슬라이드 배너">- role ="region"- 문서의 영역을 탐색하는데 도움을 줍니다.
 
- aria-roledescription="carousel"- 보조기기가 탐색가능한 영역으로 인식을 하는 것은 물론, 보조기기가 현재 탐색하는 영역이 carousel라는 정보를 전달 받을 수 있습니다.
 
- aria-label="생활용품 슬라이드 배너"- 캐러셀이 여러개인 경우 현재 영역의 정확한 정보를 보조기기가 전달 받을 수 있습니다.
 
인디게이터 영역
  <!-- 캐러셀 목록의 id와 인디케이터의 aria-controls 속성의 값은 고유한 이름을 가질 수 있도록 유형에 맞춰 수정이 필요함. -->
  <div class="carousel__controles">
    <button type="button" class="carousel__indicator is--active" aria-label="2개의 배너 중 1번 배너 보기" aria-controls="housewareSlideBanner"></button>
    <button type="button" class="carousel__indicator" aria-label="2개의 배너 중 2번 배너 보기" aria-controls="housewareSlideBanner"></button>
  </div>
  <!-- 연결하고자 하는 리스트 -->
  <div class="carousel__list" id="housewareSlideBanner" aira-live="off" ></div>- button태그를 사용하는 경우 type="button"을 반드시 명시해야합니다.( 명시하지 않은 경우 submit으로 이해)
- aria-label="2개의 배너 중 2번 배너 보기"- 해당 버튼이 가지고 있는 기능을 명확하게 알립니다.
 
- controls="housewareSlideBanner"- 컨트롤하고자하는 영역의 id값과 동일하게 맞춰줍니다.
 
- aira-live="off"- 동상에 변화가 생겼을 떄 변화를 읽어줄지 않을지를 설정
- 캐러셀의 이미지가 바뀔 때마다 스크린리더가 읽어주게 된다면, 다른 컨텐츠 탐색에 방해를 받을 수 있기에 off로 설정을 해줍니다.
 
완성예시
      <div class="categoryUnit__group">
        <!-- 캐러셀 UI -->
        <div class="carousel" role="region" aria-roledescription="carousel" aria-label="생활용품 슬라이드 배너">
          <!-- 캐러셀 목록의 id와 인디케이터의 aria-controls 속성의 값은 고유한 이름을 가질 수 있도록 유형에 맞춰 수정이 필요함. -->
          <div class="carousel__controles">
            <button type="button" class="carousel__indicator is--active" aria-label="2개의 배너 중 1번 배너 보기" aria-controls="housewareSlideBanner"></button>
            <button type="button" class="carousel__indicator" aria-label="2개의 배너 중 2번 배너 보기" aria-controls="housewareSlideBanner"></button>
          </div>
          <div class="carousel__list" id="housewareSlideBanner" aira-live="off" >
            <div class="carousel__item is--active" role="group" aria-roledescription="slide" aria-label="2개의 배너 중 1번째">
              <a href="/" class="carousel__link">
                <figure class="carousel__slide">
                  <img src="./assets/slides/houseware-downy.jpg" alt="" class="carousel__image">
                  <figcaption class="carousel__caption">
                    <strong class="carousel__caption--large">최초의 99.9% 향균</strong>
                    <span class="carousel__caption--small">세균 냄새 걱정 없이 상쾌하게!</span>
                  </figcaption>
                </figure>
              </a>
            </div>
            <div class="carousel__item" role="group" aria-roledescription="slide" aria-label="2개의 배너 중 2번째">
              <a href="/" class="carousel__link">
                <figure class="carousel__slide">
                  <img src="./assets/slides/houseware-dandruff.jpg" alt="" class="carousel__image">
                  <figcaption class="carousel__caption">
                    <strong class="carousel__caption--large">비듬완화 임상완료</strong>
                    <span class="carousel__caption--small">닥터방기원 댄드러프</span>
                  </figcaption>
                </figure>
              </a>
            </div>
          </div>
        </div>
      </div>Author And Source
이 문제에 관하여([HTML/CSS] Carousel 과 wai-aria), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@0seo8/HTMLCSS-Carousel-과-wai-aria저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)