태그 작성에 따라 스크린리더가 음성출력을 어떻게 하는지 확인해 보았습니다.
테스트환경
Windows XP SP3
Internet Explorer 8
Sense Reader Professional Edition v1.1.0.6
1. HEADING
헤딩 간 이동 단축키 <Ctrl+F6> 를 사용할 경우 아래와 같이 음성출력합니다.
<h1>이미지</h2>의 경우 별도의 항목으로 처리되어 헤딩을 사용하는 의미가 약해집니다.
예제소스 | 음성출력 | |
네이버메일 뉴스 카페네이트메일 뉴스 카페싸이월드메일 뉴스 미니홈피 |
<h2>네이버</h2> <h2>네이트</h2> <h2>싸이월드</h2> |
네이버 헤딩2 네이트 헤딩2 싸이월드 헤딩2 |
2. TABLE
표를 읽을 때 화살표 위/아래 키로 이동할 경우 아래와 같이 음성출력합니다.
행과 행 사이는 빈줄을 넣어 구분하게 됩니다.
summary는 “테이블설명”으로, caption은 “테이블제목”으로 음성출력합니다.
th, scope 태그에 대해서 아직 별도의 처리를 하지 않고 있습니다.
<Ctrl+Alt+방향키>를 이용하면 화면상의 테이블 구조대로 이동하며 테이블을 확인할 수 있습니다.
예제소스 | 음성출력 | |
|
<table summary="판매중인 메뉴와 가격, 옵션 메뉴“ border="1"> |
테이블 시작 3행 3열 |
3. LIST
목록의 처음과 끝에 목록시작, 목록끝을 음성출력합니다.
가상커서 설정에서 on/off 가능합니다. (Ctrl+Shift+F9)
목록의 깊이에 따라 단계1 단계2 와 같이 음성출력합니다.
목록은 위/아래 화살표로 이동합니다.
예제소스 | 음성출력 | |
<ul> |
목록시작 개수2 |
예제소스 | 음성출력 | |
<ol> |
목록시작 개수4 |
예제소스 | 음성출력 | |
<dl> |
정의목록시작 개수2 |
4. INPUT TEXT
<Ctrl+F8>로 이동시 label이나 title 값이 있으면 음성출력합니다.
label과 title이 중첩될 경우 label을 음성출력합니다.
화살표 위/아래 이동 시 label은 음성출력되지만 title은 음성출력되지 않습니다.
로그인 / 메일작성 / 게시물작성 시 사용되는 편집창들에 label이나 title을 사용해주세요.
예제소스 | 음성출력 | |
<form> <label for="subject1">제목</label> <input id="subject1" type="text" /> |
제목 편집창 | |
<label for="subject2">제목</label> <input id="subject2" title="적어주세요" type="text" /> |
제목 편집창 | |
<input title="적어주세요" type="text" /> |
적어주세요 편집창 |
<Ctrl+F8>로 이동시 alt나 title 값이 있을 경우 음성출력합니다.
alt와 title이 중첩될 경우는 title를 음성출력합니다.
readonly의 경우 “읽기전용편집창”으로 음성출력합니다.
type=password는 alt나 title이 없어도 자체 속성값에 의해 “암호편집창”으로 음성출력합니다.
예제소스 | 음성출력 | |
<input type="text" value="우편번호" title="자동입력" readonly="readonly"> |
자동입력 우편번호 읽기전용편집창 | |
<input type="password" alt="비밀번호"> |
비밀번호 암호편집창 | |
<input type="password" title="비밀번호입력"> |
비밀번호입력 암호편집창 | |
<input type="password" title="비밀번호입력" alt="비밀번호"> |
비밀번호입력 암호편집창 | |
<input type="password"> |
암호편집창 |
5. INPUT IMAGE
input image의 경우 <Ctrl+F2>로 이동시 alt나 title이 있을 경우 음성출력합니다.
alt 와 title이 중첩될 경우 title을 음성출력합니다.
이미지버튼의 경우 alt 값 사용을 권장합니다.
예제소스 | 음성출력 | |
<input type="image" alt="확인" src="img/confirm.gif“> |
확인 이미지버튼 | |
<input type="image" title="확인해" src="img/confirm.gif"> |
확인해 이미지버튼 | |
<input type="image" alt="확인" title="확인해" src="img/confirm.gif“> |
확인해 이미지버튼 |
6. CHECKBOX / RADIO
<Ctrl+F2>로 이동시 label 이나 title이 있으면 음성출력합니다.
checkbox는 ‘체크상자’로, radio는 ‘라디오버튼’으로 음성출력합니다.
항목의 선택 여부에 따라 해제/선택 으로 음성출력합니다.
예제소스 | 음성출력 | |
<input type="checkbox" id="check_test1"><label for="check_test1">옵션상품</label> |
해제 옵션상품 체크상자 | |
<input type="radio" id="radio_test1"><label for="radio_test1">직업선택</label> |
해제 직업선택 라디오버튼 |
<Ctrl+F2>로 이동시 label 이나 title이 있으면 음성출력합니다.
label과 title이 중첩될 경우 label을 음성출력합니다.
화살표 위/아래 이동시 label은 음성출력되지만 title은 음성출력되지 않습니다.
선택 여부에 따라 해제/선택 으로 음성출력합니다.
예제소스 | 음성출력 | |
<input type="checkbox" id="check_test2" title="백수인생"><label for="check_test2">직업선택</label> |
해제 직업선택 체크상자 | |
<input type="checkbox" id="check_test3" title="백수인생"> |
해제 백수인생 체크상자 |
7. TEXTAREA
<Ctrl+F2/F8>로 이동시 label이나 title이 있을 경우 음성출력합니다.
label과 title이 중첩될 경우 label 값을 음성출력합니다.
화살표 위/아래 이동시 label은 음성출력되지만 title은 음성출력되지 않습니다.
예제소스 | 음성출력 | |
<label for="textarea_test1">이용 약관</label> |
이용약관 잘지키세요 멀티라인편집창 | |
<textarea id="textarea_test2“ rows="2" cols=“10“ title="내용">잘지키세요</textarea> |
내용 잘지키세요 멀티라인편집창 | |
<label for="textarea_test3">이용약관</label> |
이용약관 잘지키세요 멀티라인편집창 |
8 SELECTBOX
Ctrl+F2>로 이동할 경우 다음 표와 같이 음성출력합니다.
label이나 title이 있으면 음성출력합니다.
label과 title이 중첩될 경우 label을 음성출력합니다.
화살표 위/아래 이동시 label은 음성출력되지만 title은 음성출력되지 않습니다.
seletectbox는 콤보상자로 음성출력합니다.
selectbox는 <Ctrl+위/아래>로 항목을 선택할 수 있습니다.
<Alt+위/아래>는 항목이 선택되지 않고 읽는 기능만 합니다.
예제소스 | 음성출력 | |
<select> |
선택하세요 콤보상자 | |
<label for="potal_test1">포탈선택</label> |
포탈선택 선택하세요 콤보상자 | |
<select title="포탈사이트"> |
포탈사이트 선택하세요 콤보상자 | |
<label for="potal_test2">포탈선택</label> |
포탈선택 선택하세요 콤보상자 |
9 IMG
화살표 위/아래로 이동시 이미지에 alt나 title이 있으면 음성출력합니다.
alt와 title이 중첩될 경우 title를 음성출력합니다.
alt=“”는 이미지가 없는 것처럼 그냥 지나치지만 title=""은 파일명을 출력합니다.
alt나 title이 없을 경우는 파일명을 음성출력합니다.
이미지의 경우 alt 사용을 권장합니다.
예제소스 | 음성출력 |
<img src="img/mcmong.jpg" alt="MC몽"> |
MC몽 이미지 |
<img src="img/mcmong.jpg" title=“원숭이몽"> |
원숭이몽 이미지 |
<img src="img/mcmong.jpg" title=“원숭이몽“ alt=“MC몽”> |
원숭이몽 이미지 |
<img src="img/mcmong.jpg" alt=““> |
(이미지가 없는 듯 지나감) |
<img src="img/mcmong.jpg" title=“”> | mcmong.jpg 이미지 |
<img src="img/mcmong.jpg" /> |
mcmong.jpg 이미지 |
10. A HREF / IMG
img 태그 안에 alt가 있을 경우 음성출력합니다.
img 태그 안에 alt가 없을 경우 a 태그 안의 title값을 음성출력합니다.
Img 태그의 alt와 a 태그의 title이 중첩될 경우 title를 음성출력합니다.
a 태그 안에 target="_blank"가 있을 경우 ‘새창’으로 음성출력되기 때문에 title에 별도로 새창이라고 입력할 필요는 없습니다. (상황에 따라 달라질수도 있음)
이미지의 경우 alt 사용을 권장합니다.
예제소스 | 음성출력 |
<a href="http://www.naver.com" target="_blank"><img src="img/naver.gif" alt="네이버" /></a> |
네이버 새창 그래픽링크 |
<a href="http://www.naver.com" title="접속하기" target="_blank"><img src="img/naver.gif" /></a> |
접속하기 새창 그래픽링크 |
<a href="http://www.naver.com" title="접속하기" target="_blank"><img src="img/naver.gif" alt="네이버" /></a> |
접속하기 새창 그래픽링크 |
11. LONGDESC
img에 longdesc를 넣었을 경우‘설명있음’으로 음성출력하고 <Alt+Enter>를 누르면 해당내용을 확인할 수 있습니다.
예제소스 | 음성출력 |
<img src="img/mcmong.jpg" alt="MC몽" longdesc="mcmong.txt" /> |
MC몽 설명있음 이미지 |
12. IMAGEMAP
이미지맵에서 area 태그 안에 alt나 title이 있으면 shape 유형에 관계없이 음성출력합니다.
화살표 위/아래로 이동시 음성출력합니다.
이미지의 경우 alt 사용을 권장합니다.
예제소스 | 음성출력 |
<img src="img/imagemap.gif" alt="이미지맵예제" border="0" usemap="#Map" /> |
이미지맵예제 이미지 마이크로소프트 새창이미지맵링크 |
13. IFRAME
iframe에 title이 있을 경우 음성출력합니다.
iframe안에 담긴 페이지의 head 안에 title이 있을 경우 음성출력합니다.
예제소스 | 음성출력 |
<iframe src="iframe_form.html" width="350" height="100" frameborder="1" title="로그인하기"></iframe> | 로그인하기 프레임시작 1/1 |
!-- iframe_form.html |
|
전체적으로 종합해 보면
폼컨트롤에는 label이나 title을, 이미지에는 alt를 사용하시는 것이 좋습니다.
위 내용 중 잘못된 부분이 있으면 댓글 남겨주세요.
이 테스트는 아래의 포스팅을 참고해서 진행되었습니다.
http://html.nhndesign.com/accessibility_sensereader_review - NURI 한혜진 님의 “센스리더 최신버전 리뷰”
http://beone.tistory.com/trackback/349 - BeOne’ World의 “시각장애인의 스크린리더 테스트”
당신의 의견을 작성해 주세요.
유낙동 2011/11/21 19:59 편집/삭제 댓글 작성 댓글 주소
title과 alt가 중첩될때 title이 음성출력된다고 하신것과(alt를 우선시 읽어주네요)
위아래 방향키 이동시 label은 읽어주고 title은 읽지 않는다는 부분은 수정해야 할 것 같습니다~
(둘다 읽어주지 않네요)
해빠 2011/11/22 00:54 편집/삭제 댓글 주소
좋은 지적 감사합니다.
안그래도 잘못된 부분이 있어서 수정하려고 했는데 차일 피일 미루게 되네요
일단 이미지에서 alt값을 먼저 읽어주는 부분이 맞습니다.
title은 별도의 단축키를 활용해서 정보를 확인할 수 있습니다.
폼 컨트롤에 포커스가 진입하는 방식에 따라 음성출력 방식이 달라집니다.
위/아래 방향키로 읽을 경우 폽의 이전/다음에 위치한 label 정보를 거치기 때문에 label 을 함께 음성출력하지 않습니다.
다만 탭키나 기타 단축키로 폼에 진입하는 경우 폼의 이전/다음에 있는 label 정보를 건너뛰어서 용도를 알 수 업기 때문에 label+폼의 형태로 음성출력하게 됩니다.
이런 동작은 폼에서의 title 정보도 동일합니다.