36

ドキュメントは複数の言語で利用できるため、複数の言語を特定したいと考えています。私が使用する場合:

<meta http-equiv="content-language" content="en,de,fr" />

これは W3C では有効ではなく、バリデーターはルートの属性で定義する必要があると言っていlangますが、この属性は 1 つの言語しかサポートしていません。

<html lang="en">

動作しますが、動作しません

<html lang="de,en,fr">

では、どこで定義すればよいのでしょうか?

4

5 に答える 5

26

すべての属性は 1 つの言語のみをサポートするため、1 つの言語のみを定義する必要があると思います。最も重要な言語を設定する必要があります。1 つのドキュメントに複数の言語がある場合、これは実行できません。問題を解決するための情報を以下に示します。

lang および xml:lang 属性では、単一のドキュメントに複数の言語を割り当てることはできません。したがって、複数の言語で Web ページを作成している場合は、次の 2 つのオプションがあります。

  1. 属性を使用して第一言語を定義し、ドキュメント内の要素の属性をlang使用して第二言語を呼び出しますlang
  2. lang必要に応じて、ドキュメントの特定のセクションで次のように定義します。

    <div lang="fr-CA" xml:lang="fr-CA">
    Canadian French content...
    </div>
    <div lang="en-CA" xml:lang="en-CA">
    Canadian English content...
    </div>
    <div lang="nl-NL" xml:lang="nl-NL">
    Netherlands, Dutch content...
    </div>
    

複数言語のページがいくつかあり、2 番目のオプションを使用します。

http://www.w3.org/TR/2007/NOTE-i18n-html-tech-lang-20070412/#ri20060630.133619987をお読みください。

于 2014-01-20T23:46:24.813 に答える
4

Content-Language HTTP ヘッダーの意味、つまりそのmetaタグ サロゲートは、他のドキュメントの言語ではなく、ドキュメントの言語または対象読者の言語 (関連する RFC は矛盾しています) を宣言するということです (現在のドキュメントの翻訳)。ヘッダーの実際の効果は小さく、 HTML マークアップに言語情報がない場合、ドキュメントの言語として指定された最初の言語の使用におそらく限定されます。

ドキュメントが他の言語で利用可能であることを示すには、次のようなタグを使用できます。

 <link rel="alternate" hreflang="de" href="foobar.de.html">

HTML 4.01 仕様の12.3.3 リンクと検索エンジンを参照してください。

これが何らかの効果をもたらすという保証はありません。検索エンジンに影響を与える可能性がありますが、通常のリンクよりも影響はありません。一部の古いブラウザー バージョンには、このような要素に基づいてドキュメントの代替バージョンを選択するためのコマンドがありましたが、この機能は削除されたようです。

于 2012-08-28T06:04:32.670 に答える
3

どの HTML バージョンを使用していますか? HTML 4.01では、Content-Language複数言語での の使用は有効ですHTML5 では、そうではありません

ただし、HTML 4.01 でも for 要素の使用はContent-Language推奨されmetaません: HTTP ヘッダー、メタ要素、および言語情報 (W3C)

于 2012-08-28T21:12:52.773 に答える
3

このままでは使えません。

必要なすべての文字を含むエンコーディング (Unicode 範囲全体をサポートする UTF-8 など) を使用するか、名前付きエンティティまたは数値参照を使用して、使用中のエンコーディング外の文字を含める必要があります。

http://bytes.com/topic/html-css/answers/154652-multiple-languages-one-document

アップデート

HTML5 を使用している場合は、各要素に lang を使用できます。つまり、北京語を含む div がある場合は、その div に属性 lang="zh-CN" を定義するだけです。(時代遅れのメタ http-equiv=content-language に代わる HTML5 は何ですか。 )

于 2012-08-27T22:19:40.550 に答える