このjsfiddleにハート ♥ Unicode 文字 (U+2665 BLACK HEART SUIT) を表示しようとしています。
フォントを指定しても、Droid Sans
ブラウザによって同じ文字が異なって表示されます。Droid Sans
したがって、フォントには ♥ 文字が含まれておらず、ブラウザはこの文字を表示するために他のフォントにフォールバックする必要があると想定しています。しかし、ブラウザーは Unicode 文字に使用するフォントをどのように決定するのでしょうか。(スクリーンショットから)UbuntuのFirefoxとChromiumの両方で表示が異なるため、オペレーティングシステム固有ではないことが判明しました。また、Firefox は Ubuntu と Windows 7 で表示が異なるため、ブラウザ固有ではありません。
だから私の質問は -ブラウザはどのフォントを使用して Unicode 文字を表示するかを決定する方法です。ブラウザが Unicode 文字を表示するために使用しているフォントを調べるにはどうすればよいですか。また、クロスブラウザーで一貫した外観を確保するにはどうすればよいですか?
PS: (Firefox 固有) Droid Sans
♥ の文字は含まれていませんが、Firefox は、選択したフォントが の場合にのみ、スクリーンショットのように表示しますDroid Sans
。他のフォントの場合、Firefox はそのDejaVu Sans
フォントを選択して ♥ 文字を表示します (Ubuntu では、ヒットと試行によって確認されています)。