WCAG 2.0 実装方法集

メインコンテンツへスキップ

-

FLASH13: HTML の言語属性を使用して Flash コンテンツの言語を指定する

適用(対象)

これは、次の達成基準に関連する実装方法である:

ユーザーエージェント及び支援技術によるサポート

ユーザーエージェントによるサポートに関する全般的な情報は、Flashのユーザーエージェントによるサポートを参照のこと。

JAWS 8.0 以降は、言語属性に基づいて自動的に言語を変更するように設定することができる。ただし自動的に切り替えることができるのは、プライマリコードで指定される主要言語のみである。言語のサブコードによって地域的に変異した言語が指定されている場合、JAWS は設定されているデフォルトの主要言語を使用する。

解説

この実装方法の目的は、Flash が含まれるページの HTML 要素または object 要素に lang 属性または xml:lang 属性(またはその両方)を指定することによって、Flash コンテンツのデフォルトの言語を特定することである。埋め込まれた Flash コンテンツは、この方法で指定された言語を継承する。Web ページ全体で 1 つの言語を使用する場合は、ページの HTML 要素に lang 属性および xml:lang 属性を指定することができる。これについては、「H57: html要素の言語属性を用いる」で説明されている。

Flash は HTML 要素または object 要素から言語を継承する。したがって、Flash コンテンツ内のすべてのテキストは、そのようにして継承された言語であると想定される。これは、ある言語のページに別の言語の Flash オブジェクトを配置すること、また、異なる言語の複数の Flash オブジェクトを配置することが可能であることを意味する。ただし、この実装方法を使用して、一つの Flash オブジェクト内でコンテンツの言語(人間が使用する言語)を変更するように指定することはできない。

事例

事例 1: 埋め込まれた Flash 内でページ全体の言語を使用する

この事例では、Web ページ全体のコンテンツをフランス語に定義する。Flash コンテンツは、HTML コンテナで指定された言語を継承する。

コード例:

<?xml version="1.0" encoding="UTF-8"?>

<html lang="fr" xml:lang="fr" xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta content="text/html; charset=iso-8859-1"
      http-equiv="Content-Type"/>
    <title>Flash Languages Examples - French</title>
    <script src="swfobject.js" type="text/javascript"/>
    <script type="text/javascript">

    swfobject.registerObject("myMovie", "9.0.115", "expressInstall.swf");
</script>
  </head>
  <body>
    <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
      height="420" id="myMovie" width="780">
      <param name="movie" value="myMovie.swf"/>
      <!--[if !IE]>-->

      <object data="languages.swf" height="420"
        type="application/x-shockwave-flash" width="780">
        <!--<![endif]-->
        <!--[if !IE]>-->
      </object>
      <!--<![endif]-->

    </object>
  </body>
</html>

この実例は、「埋め込まれた Flash 内でページ全体の言語を使用する」のサンプル(英語)で確認できる。また、「埋め込まれた Flash 内でページ全体の言語を使用する」のソース(英語)をダウンロードすることもできる。

事例 2: 埋め込まれた Flash のみに言語を適用する

この事例では、Flash ムービーのコンテンツをフランス語に定義する。Flash ムービーは、SWFObject による静的なパブリッシュ手法(英語)を使用して埋め込まれている。この手法では 二つのネストした object 要素が使用され、外側の要素は Internet Explorer 向け、内側の要素はその他のブラウザ向けである。このため、lang 属性および xml:lang 属性を二つ追加する必要がある。

コード例:

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
  height="420" id="myMovie" lang="fr" width="780" xml:lang="fr">

  <param name="movie" value="myMovie.swf"/>
  <!--[if !IE]>-->
  <object data="languages.swf" height="420" lang="fr"
    type="application/x-shockwave-flash" width="780" xml:lang="fr">
    <!--<![endif]-->
    <!--[if !IE]>-->

  </object>
  <!--<![endif]-->
</object>

参考リソース

この参考リソースは、あくまでも情報提供のみが目的であり、推薦などを意味するものではない。

検証

チェックポイント

  1. SWF への参照が含まれている HTML ドキュメントの html 要素および object 要素を確認する。

  2. Flash コンテンツの言語(人間が使用する言語)が、object 要素で継承されている言語(HTML 4.01 仕様書の「Inheritance of language codes」を参照)と同じである

  3. lang 属性の値が、「BCP 47: Tags for the Identification of Languages」、またはその後続の仕様に準拠しており、Flash コンテンツで使用されている主要言語を反映したものである。

  4. Flash コンテンツ内で人間が使用する言語に変更が生じていない

判定基準

注意: この実装方法が「達成基準を満たすことのできる実装方法」の一つである場合、このチェックポイントや判定基準を満たしていなければ、それはこの実装方法が正しく用いられていないことを意味するが、必ずしも達成基準を満たしていないことにはならない。場合によっては、別の実装方法によってその達成基準が満たされていることもありうる。

日本語訳における注記:

この文書の正式版は、W3Cサイトで公開されている英語の文書であり、この日本語訳には誤訳が含まれていることもありえます。なお、文中にある「日本語訳における注記」は、W3Cの原文にはないものであり、日本語訳監修者が追記したものです。