2011-07-26 1 views
1

저는 기존 html 레이아웃에서 ARIA 랜드 마크 역할을 구현하고 있습니다. 더 나은 코드를 바꿀 필요가 있습니다. 내가 찾은 모든 예는 전체 컨테이너에 대한 경계표를 사용합니다. 예 : . 내 템플릿에서아리아 랜드 마크 역할, 컨테이너 만 해당?

<div id="content" role="main"> 
<p>....</p> 
<ul>...</ul> 
</div> 

는 항상 내가 ARIA 랜드 마크로 표시 wan't 내용을 둘러싼 컨테이너 없다. 구현을 위해 전체 컨테이너를 표시하지 않고 해당 내용의 시작 부분에 표시를 설정하는 것이 더 쉬운 경우가 있습니다.

그래서 그 결과는 다음과 같습니다

<div role="main"></div> 
<p>....<p> 
<ul>...</ul> 

를보기 스크린 리더 또는 기타 소프트웨어의 의미 론적 관점에서 컨텐츠가 종료 혹은 내용이 비어 생각 정확히 알 수 없습니다. 이것이 문제가 될 수 있습니까?

JAWS 스크린 리더로 테스트 한 결과 동일하게 보입니다. JAWAS는 단지 랜드 마크의 시작을 찾습니다. 이것이 문제입니까? 아니면이 방법으로 사용할 수 있습니까?

답변

0

글쎄, 여기에 몇 가지 일이 있습니다.

처음에는 스크린 리더가 모두 행동하고 같은 방식으로 행동하는 것이 좋겠지 만 내 경험에 따르면 브라우저 전쟁과 유사하므로 role = "main"을 사용하면 다른 독자들에게 꼭 필요한 것은 아닙니다.

당신은 옳습니다. 콘텐츠 속성이 끝나는 시점에 어떤 역할 속성인지는 인식되지 않습니다. 그렇기 때문에 지금까지 ARIA를 지원하는 모든 사람들의 의견이 있습니다. 약간).

마지막으로 내 조언 - 나는 당신이 다른 역할을 사용해야한다고 생각합니다. 지역 역할은 훨씬 일반적이지만 사용자가 중요한 콘텐츠의 위치를 ​​지정하는 데 여전히 도움이됩니다. 다른 한편으로, 만약 당신이 그것을 정말로 보편적이고 스크린 리더를 사용할 수있게하고 싶다면, 롤 컨셉을 완전히 삭제하고 숨겨진 h2 헤더 태그를 때리면됩니다. 그것이 공상적인 것은 아니지만, 일한다는 것이 보장되며 커뮤니티에서 아무도 그 일에 대해 전혀 알지 못할 것입니다.

그렇다면 영역을 표시하거나 더 잘 표현하려면 영역과 같은 일반적인 역할을 사용하여 역할 아이디어를 모두 스크랩하고 균일 한 호환성을 위해 상용구 h2 태그로 되돌아 가십시오.

+0

아리아 지원은 정말 나쁘지 않아서 그렇게 나쁜 것입니까? 여기에 그다지 나쁘지는 않네 http://www.accessibleculture.org/research/html5-aria-2011/ – yvess

+0

'main'과'banner'와 같은 역할을 정의하고 싶습니다. * 단 한 번. ** 그러나 내 경험에 비추어 볼 때 스크린 리더는 어쨌든 반복됩니다. 그것은 다른 접근법이 순서대로 진행되는 것처럼 들립니다. 또한'article','header' 등과 같은 새로운 HTML5 구조를 염두에 두시기 바랍니다. 페이지의 내용에 대한 정보가 없어도 더 많은 것을 돕기는 어렵습니다. 다음 ARIA 역할 링크가 도움이 될 수 있습니다. http://www.paciellogroup.com/blog/2010/10/using-wai-aria-landmark-roles/ –

0

동의, 그냥 콘텐츠의 시작 부분을 표시합니다. 그렇다면 왜 비어있는 div를 만드는 대신 첫 번째 요소에 role = "main"을 넣지 않고 주 콘텐츠를 시작하는 것이 좋을까요? 위의 예에서는 <p> 태그입니다.

다른 방식으로 role = "main"은 '주 콘텐츠로 건너 뛰기'링크에 앵커를 제공하는 데 사용할 수 있습니다. 또한 <p> 태그에 역할을 배치하는 방식을 지원합니다.

요약하면 건너 뛰기 링크를 사용하거나 보조 기술의 바로 가기를 사용하면 어디로 뛰어 오르시겠습니까? 확장 된 탐색에서만 이익을 볼 수 있습니다. 이는 '획기적인'역할로 간주됩니다.이 점이 나에게 중요한 요소입니다.

0

나는 WAI-ARIA에 대한 전문가가 아니지만 (최근에 더 많이 배우기는하지만), 독자는 실제로 역할이 표시된 지역 내에 포함 된 콘텐츠에 대해 독자가 이해한다는 점을 이해합니다. 표시된 영역이 시작됩니다.또한

here에서 인용합니다 :

아마 랜드 마크를 적용하기위한 가장 중요한 규칙은 모든 내용이 어떤 내용이 분리되지 않습니다 보장하기 위해 랜드 마크 지역에있는 보장하는 것입니다. 이렇게하면 화면 판독기 사용자가 누락 된 컨텐츠 없이도 랜드 마크 탐색을 안전하게 사용할 수 있습니다.

이렇게하려면 템플릿을 원하는 것보다 많이 수정해야 할 수 있습니다.