langとxml:langを持つHTML要素は、同じ基本言語を持つ必要があります。
修正方法
lang
属性値を主要なドキュメント言語を示す html
要素 (例: <html lang="en">
) に追加します。
必要に応じて lang
属性の値を xml:lang
要素の html
属性の値として複製します。
開始要素の lang
属性値を設定し、値を正しく入力することを忘れないでください。 html
たとえば、ドキュメントの主な言語が英語の場合、言語を次のように指定します。
<html lang="en">
<!--document head and body-->
</html>
言語値コードには、アメリカ英語とイギリス英語を区別するための "「en-US」や、カナダのフランス語とヨーロッパのフランス語を区別するための「fr-CA」など、いくつかの方言が含まれます。" 言語および方言コードのリストは、 「言語名の表現のためのISOコード」Webページにあります。
ドキュメントに複数の言語が含まれる場合は、必要に応じて言語の値を指定します。
<p>Text in one language <span lang="es">text in another language</span></p>
dir
属性を使用して、右から左に記述する言語を必ず指定してください。
<p lang="ar" dir="rtl">Arabic text here</p>
逆に、 dir="ltr"
属性の値を使用して左から右に記述する言語を指定することもできます。
なぜ重要なのか
スクリーン リーダーを構成するときに、ユーザーはデフォルトの言語を選択します。Webページの言語が指定されていない場合、スクリーン リーダーはユーザーが設定したデフォルトの言語を想定します。複数の言語を話したり、複数の言語でWebサイトにアクセスしたりするユーザーにとって、それらは問題となります。スクリーン リーダーが正しく機能するためには、デフォルトの言語を指定して、それが有効であることを確認することが重要です。
スクリーン リーダーは、言語の発音と特性に基づいて、言語ごとに異なるサウンド ライブラリを使用します。スクリーン リーダーは言語ライブラリを簡単に切り替えることができますが、文書で読み取る言語が指定されている場合に限られます。言語が指定されていない場合、スクリーン リーダーはユーザーのデフォルト言語でドキュメントを読み取り、文字化けした言語になります。スクリーン リーダーが間違った言語ライブラリを使用している場合、何かを理解するのは困難になる可能性があります。
ルールの説明
HTMLドキュメントには、有効な lang
属性が含まれているか、デフォルト以外の言語を好む可能性のある多言語スクリーン リーダー ユーザー向けの有効な lang
コードに対応している必要があります。xml:lang
属性値が html
要素に含まれている場合、 lang
の値と正確に複製される必要があります。
仕組みについて (簡単に言うと)
すべてのHTMLドキュメントに有効な値を持つ lang
属性があり、存在する場合は xml:lang
値がlang属性の値と重複していることを確認します。