HTMLページの文字セットを指定する2つの方法

HTMLページの文字セットを指定する2つの方法

1. HTMLページの文字セットを指定する2つの方法

方法1:

<メタ文字セット="utf-8">

方法2:

<meta http-equiv="コンテンツタイプ" コンテンツ="text/html; charset=UTF-8">

上記は、ページの文字セットを UTF-8 に設定する (ページ文字セットの設定) 2 つの方法です。目的は、ブラウザに HTML ファイルの文字セットを伝えることです。

2. ページで使用する文字セットを設定する2つの方法

1 つ目は、サーバーが応答コンテンツの文字セットを指定することです。

レスポンス.setCharacterEncoding("utf-8")

前提条件: サーバーは、サーバーを介して指定されたインターフェースに転送またはリダイレクトします。

2 番目のタイプ: ページは文字セットを指定します。

1を参照

注: 最初の方法は 2 番目の方法よりも優先されます。

3. サーバー転送

このページでは文字セットがすでに設定されています

何が起こっているのでしょうか、なぜ機能しないのでしょうか?

原因分析

サーバー経由でページジャンプ要求(転送)を完了する

返却時に返却するデータの文字セットは指定されません。

f12 はネットワークをキャプチャし、対応するページの文字セットを iso-8859-1 として取得するため、ブラウザがページを解析すると文字化けした文字が表示されます。

解決

転送する場合は、返されるデータの文字セットを utf-8 として指定する必要があります。

レスポンス.setCharacterEncoding("utf-8");

サーバーリダイレクト

返されるデータのエンコーディング セットを指定せずにリダイレクトすると、ページはどうなりますか?

文字セットはページによって決定されます。つまり、ページの文字セットは、ページ内の文字セットの宣言によって決定されます。

たとえば、このページでは文字セット iso-8859-1 を指定しています。

ブラウザも iso-8859-1 に従って解析します。

さらに、リダイレクト設定がデータのエンコーディング セットを返す場合でも、リダイレクトによってデータが失われるため無効になります。

5. まとめ

ページがサーバーによって転送される場合、ページの文字セットは転送によって決定されます。それ以外の場合、リダイレクトされたインターフェイスまたは通常のインターフェイスの文字セットは、HTML ページ自体で宣言された文字セットによって決定されます。

注: 今日お話ししているのは、ページ文字セットの問題であり、純粋なデータ操作中に表示される文字化けした文字とは異なります。

また、HTTP レスポンス ヘッダーとメタの両方に文字セットが指定されている場合は、競合が発生し、http レスポンスの文字セットが有効になります。

以上がHTMLでページ文字セットを指定する2つの方法の詳細です。HTMLでページ文字セットを指定する方法の詳細については、123WORDPRESS.COMの他の関連記事に注目してください。

<<:  CSS 背景と境界タグの例の詳細な説明

>>:  CSSフィルターにはどんな魔法の用途があるか

推薦する

JavaScriptの基礎を学ぶ

目次1. JavaScriptを記述する場所2. JavaScriptでよく使われる入力文と出力文1...

503 サービス利用不可エラーの解決方法の説明

1. Webページを開くと503サービス利用不可が表示されますが、更新すると正常にアクセスできます。...

Vue+WebSocket ページでの長時間接続のリアルタイム更新

最近、Vue プロジェクトではデータをリアルタイムで更新する必要があります。折れ線グラフは 1 秒ご...

HTMLフローティングプロンプトボックス機能の実装コード

一般的なフォーム プロンプトは常にフォームのスペースを占有し、フォームが長くなったり広くなったりして...

http.server に基づく LAN サーバーの構築プロセスの分析

皆さんはこのような状況に遭遇したことがあるでしょうか。プロジェクトや研究開発を行う際に、緊急にファイ...

Vueはechartを使用してラベルと色をカスタマイズします

この記事では、参考までに、echartを使用してタグと色をカスタマイズするVueの具体的なコードを紹...

Firefox の CSS を使用してデータを盗む

0x00 はじめに数か月前、Firefox に脆弱性 (CVE-2019-17016) があること...

JavaScript における一般的な配列操作

目次1. 連結() 2. 結合() 3. プッシュ() 5. シフト() 6. シフト解除() 7....

HTMLページがincludeを使用してphpファイルをインポートした後に余分な空白行があります

インターネットで見つけた方法は効果的ですinclude によって導入されたフッター ファイルとヘッダ...

MySQL テーブル削除操作の実装 (delete、truncate、drop の違い)

この記事では主に、MySQL でテーブルを削除する 3 つの操作、つまり delete ステートメン...

Docker Swarm サービス オーケストレーション コマンドの詳細な説明

1. はじめにDocker には、タスクを構成する複数の Docker コンテナをオーケストレーショ...

JavaScriptでシンプルなスクロールウィンドウを実装する

この記事では、スクロールウィンドウを実装するためのJavaScriptの具体的なコードを参考までに紹...

MySQL 論理バックアップとリカバリ テストの概要

目次1. データベース論理バックアップとはどのようなバックアップですか? 2. よく使われる論理バッ...

SQLで同じフィールドの異なる値のデータ統計を実行する

適用シナリオ: シールのさまざまな状態に応じて、さまざまな状態のシールの数をカウントする必要がありま...

MySQL のインデックスとビューの使用方法と違いの詳細な説明

序文この記事では主に、MySQL のインデックスとビューの使用方法と違いを紹介し、参考と学習のために...