HTMLエンティティはまだ有用ですか、それともUTF-8でエンコードされたHTMLドキュメントを作成するだけですか?その理由を説明してください。
3 に答える
エンコーディングが正しく設定されていれば (そしてドキュメントが UTF-8 として保存されていれば)、文字だけで作業できるはずです。W3C から:
UTF-8 などのエンコーディングを使用すると、ほとんどのエスケープが不要になり、文字だけを操作できるようになります。
http://www.w3.org/International/questions/qa-escapes
ただし、より大きい/より小さいなどの特殊文字にはエンティティを使用する必要があります。
エンティティは、プログラム ソース コード ファイル (HTML を出力するプログラム) で役立ちます。多くのコーディング標準では、ファイルはプレーン ASCII である必要があります。もちろん、実際にテキスト コンテンツを含むファイル (翻訳を含む .po ファイルなど) は除きます。
内部に非 ASCII 文字がほとんど含まれていない長いファイルがある場合、文字が台無しになったことに気づかずに、間違ったエンコーディングでファイルを保存するのは非常に簡単です。
非 ASCII 文字を使用するもう 1 つの正当な理由は、見た目が似ている文字です。次の 2 行のコードの違いがわかりますか。
print "<title>" + pagename + " – " + sitename + "</title>";
print "<title>" + pagename + " - " + sitename + "</title>";
しかし、エンティティを使用すると、違いは明らかです。
print "<title>" + pagename + " – " + sitename + "</title>";
print "<title>" + pagename + " - " + sitename + "</title>";
しかし、プログラムのソース コード ファイル以外では、明らかに UTF-8 が適しています。
私の経験では、データが実際に UTF-8 であり、ブラウザに UTF-8 であることを正しく伝えている限り、エンティティを使用する必要はありません。>、<、" などを除きます。もちろん。