2016-05-18 3 views
2

私が取り組んでいるブログでアクセシビリティを向上させたいと思います。ブログはバイリンガルで、デフォルトではハンガリー語で表示されます。フラグをクリックすると言語が変更されます(JavaScriptはclass=js-enでdivからnodisplayクラスを削除し、class=js-huでdivに追加します)。HTML5アクセシビリティ/ ARIA:アーティクル内で翻訳にどのような役割を使用する必要がありますか?

各記事の2つの部分を分けたいと思います。私は<aside>の使用を検討しましたが、正確ではありません(英語で見ると、ブログの主な内容です)。

有効なタグとARIAの役割を使って、アクセシビリティを改善するために、どうお勧めしますか?

<article> 
 
    
 
    <div class="js-hu"> <!-- blog post in Hungarian --> 
 
    <p> 
 
     magyar szöveg, nem értenéd 
 
    </p> 
 
    </div> 
 

 
    <div class="js-en" hidden> <!-- blog post in English --> 
 
    <p> 
 
     same text in English 
 
    </p> 
 
    </div> 
 
    
 
</article>

答えて

4

lang属性の役割それ以上ではない:[<div class="js-en" hidden><div class="js-en nodisplay">を変え編集]

記事は次のようになり?

プラス側では、:lang pseudo-classを使用して、言語に応じてコンテンツのスタイルを設定できます。

+0

私はそれについて考えなかった。それは私が探しているものかもしれません。 ':lang'も便利です。ありがとう! – c0derabbit

1

lang属性は通信の重要な部分ですが、質問に対する回答ではありません。

アクセシビリティを変更を通信するためには、WAI-ARIA 状態、ない役割を使用します。この場合、各要素で変更する状態はaria-hidden属性です。

しかし、htmlのhidden属性を使用すると、それが実行されます。 W3CのARIA in HTMLドラフト仕様によれば、aria-hidden状態は自動的にhidden属性を反映します。したがって、すでに隠し属性を使用しているので、それ以上の変更は必要ありません。

+1

'lang'属性は質問への完璧な答えです。*"アクセシビリティを改善するために何を提案しますか? "*。間違いなくあなたは 'hidden'属性だけに依存して言語の変更を伝えることはありません。 – Adam

+1

@Adam - これは、lang属性が重要であると言った理由です。しかし、隠し属性を設定すると、ATにユーザに新しく表示されるテキストを伝えるように指示する* change *が通知されます。 – Alohci

関連する問題