2
<span style="font-family:Symbol; font-size:10pt; color:#000000">&#212;</span><span style="font-family:MS Sans Serif; font-size:10pt; color:#000000">

上記は、仲間の開発者が作成した商標記号の HTML コードです。残念ながら、彼らはこの文字シーケンスÔを使用して、プログラム名の商標記号を作成しました。私は、この文字シーケンスがこの文字を生成する可能性が最も高いという印象を受けています: Ô.

ただし、シーケンス- Chromeでは TM として
正しく表示されます。 - Safariでは間違って次の記号として表示されます: Ô - Firefox では誤って次の記号として表示されます: Ô

他のブラウザと比較して、この記号が Google Chrome で正しく表示されるのはなぜですか? これは、それぞれが異なる文字シーケンスをどのように解析するかに関係していると思いますが、なぜ Chrome がそれを正しく表示し、通常の文字シーケンス記号 Ô を無視するのか混乱しています。

質問: これは、HTML ページで使用する商標記号に使用するのに最適な文字シーケンスですか? または、他のより一般的な商標記号文字シーケンスが使用されていますか?

ありがとう!

EDIT: HTMLページの1つの上部にDOCTYPEが見つかりました。それが異なるかどうかはわかりません。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
4

2 に答える 2

3

HTML エンティティを使用します&trade;(Symbol ではなく通常のフォントで)。これは にマップされます&#8482;が、名前付きエンティティは広くサポートされています。

または、この質問への回答で提案されているように、HTML に UTF-8 エンコーディングを使用し、シンボルを直接埋め込みます。

于 2012-11-07T21:07:10.243 に答える
2

文字参照&#212;は、文字「Ô」U+00D4 LATIN CAPITAL LETTER O WITH CIRCUMFLEX を明確に示します。これは、doctype 宣言や文字エンコーディングには依存しません。したがって、それを別のものとして表示するブラウザは、誤った動作をします。

Symbol フォントの使用は、ブラウザーのバグに依存する古いトリックです。Symbol フォントは、かなり恣意的な方法で文字がさまざまな記号に置き換えられたおかしなフォントです。このフォントには、コード位置 D4 (16 進数) のセリフ バージョンとコード位置 E4 のサンセリフ バージョンの 2 つの商標記号のバリエーションが含まれています。(コードは明らかにサンセリフ環境でセリフ バージョンを使用しようとします。) これは非常に古いトリックであり、1990 年代に Alan Flavell のUsing FONT FACE to extend repertoire?でよく議論され、批判されました。

Web ページで正しい文字 U+2122 TRADE MARK SIGN を表示するには、いくつかの代替方法があります。フォントのトリッキーは必要なく、文字は周囲のテキストと同じフォントでレンダリングする必要があります。特別なことをしなければ、これは自動的に行われます。

方法は次のとおりです。

  1. 文字そのものを書く(™)。たとえば、ドキュメントのエンコーディングがUTF-8またはwindows-1252の場合、適切なエディターを使用してこれを行うことができます。
  2. 16 進文字参照&#x2122;または 10進文字参照を使用します&#8482;。これらは文字エンコーディングとは独立して機能しますが、HTML ソースを少し不可解にします。
  3. エンティティ参照を使用します&trade;。これはより記憶に残り、文字エンコーディングとは無関係に機能します。ただし、理論的には、XHTML では安全ではありません。
于 2012-11-07T21:46:00.173 に答える