ページ全体の文字エンコーディングを変更せずに1つのHTML要素の文字エンコーディングを変更できますか?たとえば、次の行があります。一部のHTML要素で異なる文字エンコーディング
<meta charset="utf-8">
私はこれを行うことができますか?
<span charset="windows-1252">Content here</span>
ページ全体の文字エンコーディングを変更せずに1つのHTML要素の文字エンコーディングを変更できますか?たとえば、次の行があります。一部のHTML要素で異なる文字エンコーディング
<meta charset="utf-8">
私はこれを行うことができますか?
<span charset="windows-1252">Content here</span>
いいえ。HTML文書全体が文字エンコーディングを持っています。これは、ブラウザによってかなり複雑な方法で検出され、これは、1つのエンコーディングを使用してその最初の部分を読み取った後、例えば1つ後に別のものを選択することを含む。適切なmeta
タグが検出されました。しかしその場合、ブラウザはそのように決定された符号化を使用して文書を再読み込みする。
HTML5標準では12.2.2.4 Changing the encoding while parsing
という名前のセクションがありますが、このセクションではノート内で、<meta>
タグでのみエンコードが変更されます(appear once, in the first 1024 bytes of the documentのみ)。
したがって、HTMLドキュメントの特定の部分のエンコーディングを変更することはできません。
同じように言い表されていませんが、以前のバージョンのHTMLとXHTMLには同じ種類の制限があり、エンコーディング中間ドキュメントを変更できません。
charsetがファイル自体の保存方法に対応する必要があるため、それがうまくいくと私は驚くでしょう。それにもかかわらず興味深い質問。 – domsson
[この記事](https://www.w3.org/International/questions/qa-html-encoding-declarations)には、HTMLで文字エンコーディングを指定する方法についてすべて知っています。 –