📝

1. 인식의 용이성

 

1. 인식의 용이성 (Perceivable)

: 모든 콘텐츠는 사용자가 인식할 수 있어야 한다.

1.1 대체 텍스트 제공

1.1.1 [검사항목 1] 적절한 대체 텍스트 제공

: 텍스트 아닌 콘텐츠는 그 의미나 용도를 이해할 수 있도록 대체 텍스트를 제공해야 한다.
 
인식이란 사물을 분별하고 판단하여 아는 것이고, 인식의 용이성이란 사용자가 어떠한 환경에서든 웹 사이트에서 제공하는 모든 콘텐츠를 동등하게 인식할 수 있도록 제공하는 것을 의미합니다.
그렇다면 화면에 표시되는 정보를 시각적으로 인식할 수 없는 사용자는 어떻게 정보를 얻을 수 있을까요? 바로 스크린 리더와 점자 정보 단말기와 같은 보조 기기를 통해 웹 콘텐츠를 인식해요. 스크린 리더는 컴퓨터나 모바일 화면의 텍스트를 음성으로 읽어 주는 소프트웨어이기 때문에 텍스트가 아닌 그림이나 사진 등의 그래픽 콘텐츠를 제공할 때는 보조 기기가 인식할 수 있도록 대체 텍스트가 함께 제공되어야 합니다. 대체 텍스트는 그래픽 콘텐츠가 전달하는 의미와 용도를 최대한 포함하여 보는 것과 동등한 수준의 정보를 제공해야 하고, 부적절하거나 불필요한 정보는 전달하지 않아야 합니다.
2021년 과학기술정보통신부한국지능정보사회진흥원에서 실시한 「2021 웹 접근성 실태조사」에 따르면 웹 접근성의 4가지의 원칙 중 인식의 용이성 준수율이 58.7%로 가장 낮게 나타났고, 해당 원칙의 7가지 검사 항목 중 적절한 대체 텍스트 제공 준수율이 32.0%로 가장 낮았습니다.
예시) 「2021 웹 접근성 실태조사」 34쪽, 원칙별 결과(%) (출처 : 과학기술정보통신부, 한국지능정보사회진흥원)예시) 「2021 웹 접근성 실태조사」 34쪽, 원칙별 결과(%) (출처 : 과학기술정보통신부, 한국지능정보사회진흥원)
예시) 「2021 웹 접근성 실태조사」 34쪽, 원칙별 결과(%) (출처 : 과학기술정보통신부, 한국지능정보사회진흥원)
예시) 「2021 웹 접근성 실태조사」 34쪽, 인식의 용이성 준수율 (출처 : 과학기술정보통신부, 한국지능정보사회진흥원)예시) 「2021 웹 접근성 실태조사」 34쪽, 인식의 용이성 준수율 (출처 : 과학기술정보통신부, 한국지능정보사회진흥원)
예시) 「2021 웹 접근성 실태조사」 34쪽, 인식의 용이성 준수율 (출처 : 과학기술정보통신부, 한국지능정보사회진흥원)
대체 텍스트가 제공되지 않으면 스크린 리더가 읽을 수 없기 때문에 시각장애인은 이용에 큰 어려움을 겪을 수밖에 없어요. 그렇기 때문에 웹 개발자는 모든 사용자가 동등하게 웹에 접근할 수 있도록 관련 지침을 준수하여 웹 콘텐츠를 만들어야 합니다.
그렇다면 대체 텍스트는 언제, 어떻게 사용해야 할까요?
 
  1. 이미지를 나타내는 <img>, <input type="image">, <area> 요소에 적절한 대체 텍스트를 제공합니다.
 
  • 이미지 텍스트
이미지가 제공하는 내용을 사용자가 인식할 수 있도록 alt 속성을 통해 대체 텍스트를 제공해요. alt 속성은 스크린 리더가 읽어 줄 뿐만 아니라 느린 네트워크 환경, 콘텐츠 차단, src 속성 오류 등 이미지를 표시할 수 없는 경우에도 이 속성의 값을 대신 보여 줍니다. 또한 수많은 검색 엔진은 이미지에 대한 정보를 alt 속성을 통해 얻기 때문에 검색 엔진 최적화(SEO)에도 영향을 줘요.
예시) 이미지 텍스트 - 2022 30분 요약 강좌 30분 만에 끝내는 HTML (출처 : 위니브, 제주코딩베이스캠프)예시) 이미지 텍스트 - 2022 30분 요약 강좌 30분 만에 끝내는 HTML (출처 : 위니브, 제주코딩베이스캠프)
예시) 이미지 텍스트 - 2022 30분 요약 강좌 30분 만에 끝내는 HTML (출처 : 위니브, 제주코딩베이스캠프)
<img src="image.jpg" alt="2022 30분 요약 강좌, 30분 만에 끝내는 HTML">
대체 텍스트를 요약해서 제공하거나 오타로 잘못된 정보를 제공하면 사용자가 이미지의 의미와 내용을 잘 이해할 수 없고, 혼동할 수 있으므로 동일한 대체 텍스트를 제공해요. 또한 <img> 요소의 대체 텍스트는 title 속성만으로 제공하지 않습니다. title 속성을 지정하면 링크나 버튼에 마우스를 올렸을 때 나타나는 말풍선이 요소와 관련된 추가 정보를 텍스트로 보여 주기 때문에 대체 텍스트로 생각하기 쉬운데요. 하지만 엄연히 다른 속성이므로 alt 속성을 대체할 수 없습니다.
<img src="image.jpg" alt="30분 요약 강좌"> <!-- 요약한 경우로 오류 예시입니다. --> <img src="image.jpg" alt="2022 30분 요약 강좌, 30분 만에 끝내는 CSS"> <!-- 오타 발생한 경우로 오류 예시입니다. -->
 
  • 이미지 버튼
텍스트가 아닌 이미지 형식으로 제출 버튼을 만드는 데 사용되는 <input type="image"> 요소도 아래와 같이 alt 속성을 통해 대체 텍스트를 제공해요.
예시) ‘로그인’ 텍스트가 포함된 이미지 버튼예시) ‘로그인’ 텍스트가 포함된 이미지 버튼
예시) ‘로그인’ 텍스트가 포함된 이미지 버튼
<input type="image" src="image,jpg" alt="로그인 하기" />
 
  • 이미지 맵
하나의 이미지에 좌표 값을 주어 여러 개의 링크를 연결할 수 있는 <area> 요소에 대체 텍스트를 제공해요. 전체 이미지가 무엇을 나타내는지 이해할 수 있도록 <img> 요소에 alt 속성을 지정하여 하위 내용을 아우를 수 있는 대체 텍스트를 제공합니다. 또한 <area> 요소에도 alt 속성을 이용하여 해당 영역의 용도나 목적을 대체 텍스트로 제공해요.
예시) 이미지 맵 - 맛집 지도예시) 이미지 맵 - 맛집 지도
예시) 이미지 맵 - 맛집 지도
<img usemap="#imagemap" src="image.png" alt="맛집 지도"> <map name="imagemap"> <area shape="rect" coords="43,70,163,168" href="해당 링크" target="_blank" alt="한식"> <area shape="rect" coords="217,79,337,168" href="해당 링크" target="_blank" alt="양식"> <area shape="rect" coords="43,184,163,274" href="해당 링크" target="_blank" alt="중식"> <area shape="rect" coords="217,184,337,274" href="해당 링크" target="_blank" alt="일식"> </map>
 
  • 그림, 사진
더 많은 내용이 담겨 있는 그림, 사진과 같은 경우에도 사용자가 이해할 수 있도록 대체 텍스트를 제공해요.
예시) 그림, 사진 - 라이캣 (출처 : 위니브, 바울랩(paullab))예시) 그림, 사진 - 라이캣 (출처 : 위니브, 바울랩(paullab))
예시) 그림, 사진 - 라이캣 (출처 : 위니브, 바울랩(paullab))
<img src="image.jpg" alt="사자 옷을 입고 손을 흔들며 인사하는 고양이 캐릭터">
 
  1. 썸네일 이미지
이미지와 이미지에 대한 설명이 함께 제공되는 경우에는 이미지와 텍스트를 하나의 링크로 묶어 주고, 스크린 리더가 중복으로 읽지 않도록 alt 속성을 빈 문자열로 제공해요. alt 속성을 빈 값으로 제공하면 스크린 리더가 읽지 않지만, alt 속성 자체를 생략할 경우에는 src 속성의 파일명을 읽게 되므로 반드시 제공해야 합니다.
예시) 썸네일 이미지 - 드넓은 제주도의 유채꽃밭예시) 썸네일 이미지 - 드넓은 제주도의 유채꽃밭
예시) 썸네일 이미지 - 드넓은 제주도의 유채꽃밭
<a href="…"> <img src="image.jpg" alt=""> <span>드넓은 제주도의 유채꽃밭</span> </a>
 
  1. 의미 있는 배경 이미지
의미 있는 이미지는 배경으로 지정하지 않는 것이 원칙이에요. 그러나 불가피한 경우에는 배경 이미지의 의미를 사용자가 파악할 수 있도록 마크업으로 대체 텍스트를 제공하고 IR(Image Replacement) 기법을 사용해 화면에 보이지 않도록 처리합니다. IR 기법은 콘텐츠를 시각적으로 숨겨 주지만 보조 기기와 검색 엔진이 접근할 수 있어요.
display:none, visibility:hidden은 스크린 리더마다 인식 여부가 다르므로 사용하지 않습니다.
예시) ‘코코아계정 서비스 약관에 동의해 주세요’ 텍스트 포함된 배경 이미지예시) ‘코코아계정 서비스 약관에 동의해 주세요’ 텍스트 포함된 배경 이미지
예시) ‘코코아계정 서비스 약관에 동의해 주세요’ 텍스트 포함된 배경 이미지
// HTML <p class="ir_wa"> 멋쟁이 사자처럼 서비스 약관에 동의해 주세요.</P> // CSS .ir_wa{ display:block; overflow:hidden; position:relative; z-index:-1; width:100%; height:100% }
 
  1. 아이콘 버튼
기능이나 정보를 제공하는 아이콘 버튼에도 대체 텍스트를 제공해요. 배경 이미지로 지정하는 경우에는 마크업으로 대체 텍스트를 제공하고 IR 기법으로 숨김 처리합니다.
예시) 아이콘 버튼 - 리스트, 썸네일, 설정 (출처 : 네이버 메인 페이지)예시) 아이콘 버튼 - 리스트, 썸네일, 설정 (출처 : 네이버 메인 페이지)
예시) 아이콘 버튼 - 리스트, 썸네일, 설정 (출처 : 네이버 메인 페이지)
// alt 속성으로 대체 텍스트 제공 <button> <img src="image.jpg" alt="썸네일형"> </button> // 배경 이미지로 지정한 경우 <button><span class=”ir_wa”>썸네일형</span></button>
 
  1. 의미 없는 이미지
정보를 제공하지 않고 꾸밈 용도로 사용된 불릿과 이미지의 경우 alt 속성을 빈 문자열로 제공하고, 불필요한 대체 텍스트를 제공하지 않아요.
예시) 의미 없는 이미지 - 임금체불 아이콘 (출처 : 고용노동부 민원 마당 페이지)예시) 의미 없는 이미지 - 임금체불 아이콘 (출처 : 고용노동부 민원 마당 페이지)
예시) 의미 없는 이미지 - 임금체불 아이콘 (출처 : 고용노동부 민원 마당 페이지)
<img src="image.jpg alt=""> // (O) <img src="image.jpg"> // alt 속성을 제공하지 않은 경우(X) <img src="image.jpg alt="계산기"> // 불필요한 대체 텍스트를 제공한 경우(X)
 
  1. 복잡한 데이터
그래프, 조직도, 다이어그램 등과 같은 복잡한 데이터는 사용자가 해당 콘텐츠의 상호 관계, 흐름 등의 의미를 충분히 파악할 수 있도록 alt속성. HTML 마크업, 링크 연결 등의 방법으로 대체 텍스트를 제공해요.
예시) 복잡한 데이터 - 확진환자 지역별 비율 (출처 : 코로나바이러스감염증-19 국내 발생 현황 페이지)예시) 복잡한 데이터 - 확진환자 지역별 비율 (출처 : 코로나바이러스감염증-19 국내 발생 현황 페이지)
예시) 복잡한 데이터 - 확진환자 지역별 비율 (출처 : 코로나바이러스감염증-19 국내 발생 현황 페이지)
// alt 속성으로 대체 텍스트 제공 <img src="image.jpg" alt="확진환자 지역별 비율, 10월 7일 00시 기준, 기타 41.64%, 경기 26.88%, 서울 19.51%, 경남 6.03%, 부산 5.94%">
// HTML 마크업으로 대체 텍스트 제공 <div class="ir_wa"> <h4>확진환자 지역별 비율 <span>(10.7 00시 기준)</span> </h4> <ul> <li>기타 41.64%</li> <li>경기 26.88%</li> <li>서울 19.51%</li> <li>경남 6.03%</li> <li>부산 5.94%</li> </ul> </div>
 
이전에는 대체 텍스트 내용이 긴 경우 설명이 포함된 텍스트 또는 HTML 파일의 URL을 longdesc 속성에 지정하여 제공했어요. 그러나 HTML5에서는 해당 속성을 지원하지 않고, 더 이상 권장하지 않으므로 아래와 같이 longdesc 속성 대신 <a> 요소를 사용하여 링크 내에서 이미지를 캡슐화합니다.
<a href="image-descriptions.html"> <img src="image.jpg" alt="확진환자 지역별 비율" /> </a>
 
  1. QR 코드
QR 코드는 해당 링크 주소를 알 수 있도록 URL 주소의 링크와 정보를 대체 텍스트로 제공해요.
URL 주소 제공하는 경우 <a href="<https://paullab.co.kr/index.html>"> <img src="image.jpg" alt="제주코딩베이스캠프 페이지 QR코드 <https://paullab.co.kr/index.html>"/> </a> URL 주소를 제공하지 않는 경우엔 주소 정보를 대체 텍스트로 제공합니다. <a href="<https://paullab.co.kr/index.html>"> <img src="image.jpg" alt="제주코딩베이스캠프 페이지 QR코드"/> </a>
 
  1. 캡차(CAPTCHA)
자동 가입 방지 이미지인 캡차는 보안 상의 이유로 대체 텍스트를 그대로 제공하지 않고 ‘보안 문자’, ‘자동 가입 방지용 문자’와 같이 목적이나 용도를 설명해야 해요. 또한 청각적으로 인식할 수 있는 음성 캡차도 함께 제공해야 합니다.
예시) 캡차 - 자동 가입 방지 이미지 (출처 : 네이버 카페 가입하기 페이지)예시) 캡차 - 자동 가입 방지 이미지 (출처 : 네이버 카페 가입하기 페이지)
예시) 캡차 - 자동 가입 방지 이미지 (출처 : 네이버 카페 가입하기 페이지)
 
  1. 사용자가 이미지를 직접 올리는 경우(예: 게시판에 콘텐츠 등록)에는 대체 텍스트도 함께 입력할 수 있는 기능을 제공해야 해요.
 
 

1.2 멀티미디어 대체 수단

1.2.1 [검사항목 2] 자막 제공

: 멀티미디어 콘텐츠에는 자막, 원고 또는 수어를 제공해야 한다.
동영상이나 음성 등의 멀티미디어 콘텐츠를 신체적·기술적 여건과 관계없이 누구나 인식할 수 있도록 제작하기 위해서 자막, 대본 또는 수화 언어를 제공해야합니다. 대사 없이 영상만 제공하는 경우에는 음성이나 대본과 같이 화면에 대한 해설을 제공해야 합니다. 음성만 제공하는 경우에도 자막이나 대본, 수어를 제공해야 합니다. 이때 제공하는 수단들은 멀티미디어 콘텐츠에 포함된 음성의 문맥과 동일해야 해요.
 
다음과 같이 멀티미디어 콘텐츠를 대체할 수 있는 한 가지 이상의 수단을 제공해야 합니다.
 
  1. 자막 제공
예시) 멀티미디어 콘텐츠에 자막을 제공한 경우 (출처 : [날씨] 동해안 중심 세찬 비 · 강한 바람…아침 기온 '뚝' / SBS - 유튜브)예시) 멀티미디어 콘텐츠에 자막을 제공한 경우 (출처 : [날씨] 동해안 중심 세찬 비 · 강한 바람…아침 기온 '뚝' / SBS - 유튜브)
예시) 멀티미디어 콘텐츠에 자막을 제공한 경우 (출처 : [날씨] 동해안 중심 세찬 비 · 강한 바람…아침 기온 '뚝' / SBS - 유튜브)
  • 멀티미디어 콘텐츠가 재생될 때마다 자막이 자동으로 화면에 표시되어야 해요.
  • 자막은 멀티미디어 콘텐츠에 포함된 음성(대사)과 동일한 내용이어야 해요.
  • 자막은 사용자의 필요에 따라 활성화 여부를 설정할 수 있도록 해요.
 
  1. 대본 제공
예시) 멀티미디어 콘텐츠에 대본을 제공한 경우 (출처 : [날씨] 주말∼휴일, 완연한 가을...다음 주엔 초겨울 추위 -  네이버 YTN 뉴스)예시) 멀티미디어 콘텐츠에 대본을 제공한 경우 (출처 : [날씨] 주말∼휴일, 완연한 가을...다음 주엔 초겨울 추위 -  네이버 YTN 뉴스)
예시) 멀티미디어 콘텐츠에 대본을 제공한 경우 (출처 : [날씨] 주말∼휴일, 완연한 가을...다음 주엔 초겨울 추위 - 네이버 YTN 뉴스)
  • 대본은 멀티미디어 콘텐츠에 포함된 음성(대사)과 동일한 내용이어야 해요.
  • 대본은 사용자의 필요에 따라 활성화 여부를 설정할 수 있도록 해요.
 
  1. 수어 제공
예시) 멀티미디어 콘텐츠에 수어를 제공한 경우 (출처 : [NIB 뉴스] 농아인들, 수어통역사 크기 작아 불편… 제도 개선 필요 - 유튜브)예시) 멀티미디어 콘텐츠에 수어를 제공한 경우 (출처 : [NIB 뉴스] 농아인들, 수어통역사 크기 작아 불편… 제도 개선 필요 - 유튜브)
예시) 멀티미디어 콘텐츠에 수어를 제공한 경우 (출처 : [NIB 뉴스] 농아인들, 수어통역사 크기 작아 불편… 제도 개선 필요 - 유튜브)
  • 동영상 콘텐츠에 수어를 녹화한 콘텐츠를 중첩해서 함께 제공해요.
  • 수어는 충분한 해상도를 제공해야 해요.
  • 수어는 멀티미디어 콘텐츠에 포함된 음성(대사)과 동일한 내용이어야 해요.
 
예시) 제 3자가 영상을 업로드 하는 경우 (출처 : 네이버 널리, 2. 자막 제공 > 2) 사용자가 업로드하는 멀티미디어)예시) 제 3자가 영상을 업로드 하는 경우 (출처 : 네이버 널리, 2. 자막 제공 > 2) 사용자가 업로드하는 멀티미디어)
예시) 제 3자가 영상을 업로드 하는 경우 (출처 : 네이버 널리, 2. 자막 제공 > 2) 사용자가 업로드하는 멀티미디어)
이 외에도 제 3자가 영상을 업로드 하는 경우 대체 콘텐츠를 제공할 수 있는 툴을 제공해야 합니다.
 

1.3 명료성

1.3.1 [검사항목 3] 색에 무관한 콘텐츠 인식

: 콘텐츠는 색에 관계없이 인식될 수 있어야 한다.
예시) 일반 모드, 고대비 모드, 흑백 모드일 때의 화면예시) 일반 모드, 고대비 모드, 흑백 모드일 때의 화면
예시) 일반 모드, 고대비 모드, 흑백 모드일 때의 화면
웹사이트에서 제공하는 모든 정보는 특정 색을 구별할 수 없는 사용자(예: 빨간색과 초록색을 구분할 수 없는 적록색맹), 흑백 모드 사용자, 고대비 모드 사용자가 인식할 수 있어야 합니다. 색으로만 구분된 정보는 콘텐츠의 내용이나 구조에 대한 정확한 인식이 어려워요. 그래서 정보에 대한 텍스트나 패턴, 굵기 등의 무늬를 활용하여 구분해주어야 합니다.
다시 말해, 웹사이트에서 제공되는 모든 정보는 색에 상관없이 인식될 수 있도록 제작해야 합니다.
 
  1. 색에 의한 정보 표현 방지
  • 차트나 그래프를 고대비 모드로 화면에 표시했을 때 모든 색이 단색으로 표시되기 때문에 사용자가 색을 구분하지 못하는 경우가 발생해요. 이러한 상황에도 콘텐츠를 인식할 수 있도록 색으로만 정보를 제공하지 않아야 해요.
  • 색은 시각적인 강조를 위해서만 사용해야 해요.
예시) 같은 통계 정보를 표로 제공한 경우 (출처 : 서울시 고용지표 통계> 데이터셋> 공공데이터 | 서울열린데이터광장)예시) 같은 통계 정보를 표로 제공한 경우 (출처 : 서울시 고용지표 통계> 데이터셋> 공공데이터 | 서울열린데이터광장)
예시) 같은 통계 정보를 표로 제공한 경우 (출처 : 서울시 고용지표 통계> 데이터셋> 공공데이터 | 서울열린데이터광장)
 
 
예시) 같은 통계 정보를 막대그래프로 제공한 경우(1) (출처 : 서울시 고용지표 통계> 데이터셋> 공공데이터 | 서울열린데이터광장)예시) 같은 통계 정보를 막대그래프로 제공한 경우(1) (출처 : 서울시 고용지표 통계> 데이터셋> 공공데이터 | 서울열린데이터광장)
예시) 같은 통계 정보를 막대그래프로 제공한 경우(1) (출처 : 서울시 고용지표 통계> 데이터셋> 공공데이터 | 서울열린데이터광장)
 
 
예시) 같은 통계 정보를 원형그래프로 제공한 경우(2) (출처 : 서울시 고용지표 통계> 데이터셋> 공공데이터 | 서울열린데이터광장)예시) 같은 통계 정보를 원형그래프로 제공한 경우(2) (출처 : 서울시 고용지표 통계> 데이터셋> 공공데이터 | 서울열린데이터광장)
예시) 같은 통계 정보를 원형그래프로 제공한 경우(2) (출처 : 서울시 고용지표 통계> 데이터셋> 공공데이터 | 서울열린데이터광장)
 
  1. 무늬를 이용한 정보 제공
  • 색에 상관 없이 차트나 그래프 등을 패턴, 굵기 등의 다양한 방법으로 구분해요.
예시) 슬라이드 버튼 선택 여부 (출처 : 서울특별시 공공서비스예약)예시) 슬라이드 버튼 선택 여부 (출처 : 서울특별시 공공서비스예약)
예시) 슬라이드 버튼 선택 여부 (출처 : 서울특별시 공공서비스예약)
 
예시) 페이지내이션 (출처 : 공지사항 | 이용안내 | 서울특별시 공공서비스예약)예시) 페이지내이션 (출처 : 공지사항 | 이용안내 | 서울특별시 공공서비스예약)
예시) 페이지내이션 (출처 : 공지사항 | 이용안내 | 서울특별시 공공서비스예약)
 
 
예시) 탭 버튼 선택 여부 (출처 : 공지사항 | 이용안내 | 서울특별시 공공서비스예약)예시) 탭 버튼 선택 여부 (출처 : 공지사항 | 이용안내 | 서울특별시 공공서비스예약)
예시) 탭 버튼 선택 여부 (출처 : 공지사항 | 이용안내 | 서울특별시 공공서비스예약)
 

1.3.2 [검사항목 4] 명확한 지시사항 제공

: 지시사항은 모양, 크기, 위치, 방향, 색, 소리 등에 관계없이 인식될 수 있어야 한다.
웹사이트 사용에 필요한 지시사항을 시각이나 청각 등 특정한 감각에만 의존하는 방법으로 제공해서는 안 됩니다. 단순히 색, 크기, 모양, 위치와 같은 정보로 지시 사항을 표시하는 것이 아니라, 해당 요소가 무엇을 의미하는지 명확하게 설명하는 텍스트를 제공하거나 그 요소가 포함하고 있는 대체 텍스트를 사용해 명시해야 해요.
또한, 색, 크기, 모양, 위치와 같은 정보를 불가피하게 사용해야 하는 경우에는 시각 이외의 다른 감각을 통해서도 지시사항을 인식하는 데에 문제가 없도록 콘텐츠를 제공해야 합니다.
 
  1. 색, 크기, 모양 또는 위치와 같은 정보에 대한 인식
예시) 색에 대해 명확한 설명을 제공한 경우 (출처 : 전국 센터 안내 : 홈 > 대표 > 건강검진 > 전국 센터 안내)예시) 색에 대해 명확한 설명을 제공한 경우 (출처 : 전국 센터 안내 : 홈 > 대표 > 건강검진 > 전국 센터 안내)
예시) 색에 대해 명확한 설명을 제공한 경우 (출처 : 전국 센터 안내 : 홈 > 대표 > 건강검진 > 전국 센터 안내)
// 설명을 위한 예시 코드 입니다. <p class="blind"> 경기 지역의 건강검진 센터 위치입니다. </p>
 
예시) 모양에 대해 명확한 설명을 제공한 경우 (출처 : 개인회원 정보입력 < 회원가입 < 고객센터 - 서울일자리포털)예시) 모양에 대해 명확한 설명을 제공한 경우 (출처 : 개인회원 정보입력 < 회원가입 < 고객센터 - 서울일자리포털)
예시) 모양에 대해 명확한 설명을 제공한 경우 (출처 : 개인회원 정보입력 < 회원가입 < 고객센터 - 서울일자리포털)
 
예시) 정보에 대해 위치나 방향, 크기가 아닌 명확한 설명을 제공한 경우 (출처 : 네이버 정책 > 네이버 약관 및 개인정보 보호 > 네이버 개인정보 처리방침)예시) 정보에 대해 위치나 방향, 크기가 아닌 명확한 설명을 제공한 경우 (출처 : 네이버 정책 > 네이버 약관 및 개인정보 보호 > 네이버 개인정보 처리방침)
예시) 정보에 대해 위치나 방향, 크기가 아닌 명확한 설명을 제공한 경우 (출처 : 네이버 정책 > 네이버 약관 및 개인정보 보호 > 네이버 개인정보 처리방침)
 
  1. 음성이나 음향 정보의 인식
    1. 전달하고자 하는 지시사항 또는 알림 정보를 소리만으로 전달하는 경우를 말합니다. 소리만으로 전달하는 경우 청력 기능에 장애가 있는 이용자들은 인지하기 어렵기 때문에 시각적인 정보를 함께 제공해야 합니다. 온라인을 통해 시험을 치르는 경우 경과시간 또는 남은 시간, 정답 여부 등의 정보 전달을 소리(경고음, 비프음)뿐만 아니라 시각적인 정보도 함께 전달받을 수 있도록 경고창과 같은 요소를 활용하여 정보를 전달할 수 있도록 합니다.
      예시) 알림창을 활용하여 시각정보를 함께 제공하는 예시예시) 알림창을 활용하여 시각정보를 함께 제공하는 예시
      예시) 알림창을 활용하여 시각정보를 함께 제공하는 예시
       

1.3.3 [검사항목 5] 텍스트 콘텐츠의 명도 대비

: 텍스트 콘텐츠와 배경 간의 명도 대비는 4.5대 1 이상이어야 한다.
‘텍스트 콘텐츠의 명도 대비’는 시력과 연관된 검사항목으로 색각 이상자, 저시력자 또는 고령자와 같이 시력 기능에 장애가 있는 이용자들도 콘텐츠를 인식할 수 있도록 고려하여 제공할 수 있도록 제안하고 있습니다.
예시) 정상색각과 이상색각의 차이 (출처: 보건복지부 )예시) 정상색각과 이상색각의 차이 (출처: 보건복지부 )
예시) 정상색각과 이상색각의 차이 (출처: 보건복지부 )
텍스트 콘텐츠 명도 비율이 낮을 경우, 이상 색각자 라면 위 사진처럼 색을 구분하기 어렵습니다. 명도는 색의 밝고 어두운 정도를 나타내는데 명도가 높다면 밝은 것이고 명도가 낮다면 어두운 것을 의미해요. 명도를 일정 비율 이상(밝게) 적용한다면 콘텐츠를 구분하고 인식하는데 수월할 수 있습니다.
「한국형 웹 콘텐츠 접근성 지침 2.1」 에서 제안하는 콘텐츠의 명도 대비 기준에 맞춰 제작한다면 웹 접근성을 고려한 마크업을 실천해 볼 수 있습니다.
 
  1. 콘텐츠의 명도 대비
  • 웹 페이지가 제공하는 텍스트 콘텐츠와 배경 간의 명도 대비가 4.5 : 1 이상일수록 텍스트와 배경을 구별하는데 수월해요.
    • 예시) 텍스트와 배경의 명도비율 4.5 : 1 이하, 이상 차이예시) 텍스트와 배경의 명도비율 4.5 : 1 이하, 이상 차이
      예시) 텍스트와 배경의 명도비율 4.5 : 1 이하, 이상 차이
 
  • 폰트 크기가 18pt 또는 폰트 굵기가 14pt 이상일 경우 명도대비 3:1 까지 적용 가능해요.
    • 윈도우(windows)에서 18pt는 24px, 14pt는 18.66px 이고 맥(maxOS)는 pt 와 px 값이 동일해요.
  • 콘텐츠 화면 확대기능이 있다면 명도 대비 3:1 까지 적용 가능해요.
  • 의미 있는 이미지나 텍스트가 이미지(img)로 구성된 경우에도 명도 대비를 준수해요.
예시) 의미있는 이미지 준수사례 (출처: 서울특별시 페이지)예시) 의미있는 이미지 준수사례 (출처: 서울특별시 페이지)
예시) 의미있는 이미지 준수사례 (출처: 서울특별시 페이지)
  • 로고, 장식목적의 컨텐츠, 마우스나 키보드를 통해 초점을 받았을 때 명도대비가 높아지는 콘텐츠는 예외
  • 크롬 브라우저의 개발자도구를 활용하여 텍스트와 배경의 명도 비율을 확인할 수 있어요.
💡
개발자 도구 단축키 - 윈도우(windows) : [F12] / [ctrl] + [shift] + i - 맥(mac) : [fn] + [F12] /[cmd] + [alt] + i
  • 명도 비율을 확인하고 싶은 텍스트 콘텐츠에 커서를 올려 놓으면, Contrast의 수치를 통해 확인할 수 있어요.
예시) 개발자도구를 통해 확인해보는 명도비율(1)예시) 개발자도구를 통해 확인해보는 명도비율(1)
예시) 개발자도구를 통해 확인해보는 명도비율(1)
예시) 개발자도구를 통해 확인해보는 명도비율(2)예시) 개발자도구를 통해 확인해보는 명도비율(2)
예시) 개발자도구를 통해 확인해보는 명도비율(2)
예시) contrastinder 도구 웹사이트를 활용한 명도비율 확인하는 방법예시) contrastinder 도구 웹사이트를 활용한 명도비율 확인하는 방법
예시) contrastinder 도구 웹사이트를 활용한 명도비율 확인하는 방법
 
 

1.3.4 [검사항목 6] 자동 재생 금지

: 자동으로 소리가 재생되지 않아야 한다.
스크린리더 사용자가 페이지에 방문했을 때, 소리가 자동으로 재생된다면 스크린리더 음성과 겹쳐 정보제공에 혼란을 줄 수 있습니다. 따라서 이용자가 인지하고 있지 못한 상태에서 소리 자동 재생 기능은 최대한 지양할 수 있도록 해야 합니다. 비디오 콘텐츠 또한 자동재생이 되지 않도록 제공해야 합니다. HTML 에서는 video, iframe, audio 태그를 활용해 멀티미디어 콘텐츠를 제공할 수 있는데, 해당 태그는 autoplay(자동재생) 속성을 비활성화 하거나, mute(음소거) 속성을 설정할 수 있습니다.
 
  • video
video 태그 내부에 autoplay 속성이 존재한다면 비디오가 자동재생 될 수 있기 때문에, 비디오 콘텐츠를 정지된 상태로 제공하기 위해선 autoplay 속성을 비활성화 시킵니다. autoplay를 비활성화 하려면 해당 속성을 완전히 제거하거나, autoplay="false"로 적용 시킵니다.
// autoplay 속성 제거 <video controls loop muted> <source src="" type=""> </video> // autoplay="false" 적용 <video autoplay="false" controls loop muted> <source src="" type=""> </video>
 
  • iframe
iframe 태그는 현재 문서 안에 다른 HTML 페이지를 삽입할 수 있습니다. youtube를 연동하여 영상을 삽입할 경우, 정지된 상태 또는 음소거 속성을 적용하여 콘텐츠를 제공해야 합니다. 내부 속성 allow autoplay를 적용시키면 자동재생기능을 구현할 수 있어요. 하지만 크롬브라우저에서는 muted 속성을 함께 사용해야만 자동재생기능을 적용시킬 수 있기 때문에 muted속성을 꼭 적용하도록 합니다.muted 속성 활성화 방법은 src 속성 내부 youtube 링크 주소 끝에 ?mute=1&autoplay=1 를 작성 하여 활성화 시킬 수 있습니다.
//mute속성과 함께 autoplay 속성 적용 <iframe width="600" height="430" src="https://www.youtube.com/embed/PQymWXKehlk?mute=1&autoplay=1" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
예시) iframe 자동재생 구현 방법 및 음소거 기능 구현예시) iframe 자동재생 구현 방법 및 음소거 기능 구현
예시) iframe 자동재생 구현 방법 및 음소거 기능 구현
 
//mute속성과 함께 autoplay 속성 적용 <iframe width="600" height="430" src="https://www.youtube.com/embed/PQymWXKehlk?mute=1&autoplay=1" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
하지만 웹 구현 요구사항에 소리 자동 재생 기능이 필히 요구된다면 어떻게 해야 할까요? 예외적으로 허용 되는 경우가 있습니다.
  1. 자동 재생음을 허용하는 경우
      • 3초 이내 멈출 수 있도록 기능을 구현하거나, 지정된 키(key)를 누르면 재생음을 멈추도록 구현해요.
      • 이용자가 정지, 일시 정지, 음량을 조작할 수 있도록 컨트롤 버튼을 제공해요.이용자가 콘텐츠를 조작할 수 있는 기능을 구현한다면 자동재생기능을 적용시킬 수 있어요.
      예시) 이용자가 조작 할 수 있는 음성 콘텐츠 조작 버튼 제공 (출처 : 제주코딩 베이스캠프)예시) 이용자가 조작 할 수 있는 음성 콘텐츠 조작 버튼 제공 (출처 : 제주코딩 베이스캠프)
      예시) 이용자가 조작 할 수 있는 음성 콘텐츠 조작 버튼 제공 (출처 : 제주코딩 베이스캠프)
      컨트롤 버튼을 해당 페이지의 가장 상단에 위치할 수 있도록 해준다면 다양한 이용자들을 고려한 마크업이 될 수 있습니다.

1.3.5 [검사항목 7] 콘텐츠 간의 구분

: 이웃한 콘텐츠는 구별될 수 있어야 한다.
‘콘텐츠 간의 구분’ 검사항목은 시각적으로 정보를 인지하는 데 장애가 있는 이용자들을 고려할 수 있도록 제안하고 있습니다. 이웃한 콘텐츠가 테두리, 구분 선, 다른 무늬 등을 이용해서 시각적으로 구분될 수 있도록 해야 합니다. 콘텐츠가 명확히 구분될 수 있는 레이아웃 또는 디자인은 가독성과 정보 전달력을 높일 수 있습니다.
예시) 이웃한 콘텐츠 간의 구분 오류 예시예시) 이웃한 콘텐츠 간의 구분 오류 예시
예시) 이웃한 콘텐츠 간의 구분 오류 예시
 
콘텐츠를 구별하는 방법은 다양합니다.
  • 테두리를 이용하여 구분
  • 콘텐츠 사이에 시각적인 구분 선을 삽입하여 구분
  • 서로 다른 무늬를 이용하여 구분
  • 콘텐츠 배경색 간의 명도 대비(채도)를 달리하여 구분
  • 줄 간격 및 글자 간격을 조절하여 구분
  • 기타 콘텐츠를 시각적으로 구분할 수 있는 방법을 통해 구분
예시) ‘테두리를 이용한 구분’ 예시예시) ‘테두리를 이용한 구분’ 예시
예시) ‘테두리를 이용한 구분’ 예시
예시) ‘콘텐츠 배경색 간의 명도 대비를 달리하여 구분’ 예시예시) ‘콘텐츠 배경색 간의 명도 대비를 달리하여 구분’ 예시
예시) ‘콘텐츠 배경색 간의 명도 대비를 달리하여 구분’ 예시
예시) ‘이웃한 컨텐츠 간 구분할 수 있는 디자인을 적용’ 예시 (출처 : 멋쟁이사자처럼)예시) ‘이웃한 컨텐츠 간 구분할 수 있는 디자인을 적용’ 예시 (출처 : 멋쟁이사자처럼)
예시) ‘이웃한 컨텐츠 간 구분할 수 있는 디자인을 적용’ 예시 (출처 : 멋쟁이사자처럼)