規則でアラビア語フォントを使用すると@fontfoce
、奇妙なことが起こります。ローマ字に関しては、ほとんどすべてのブラウザー (Opera を除く) はフォントのローマ字セットを使用せず、代わりにfont-family
プロパティで宣言された他のフォントの文字セットを使用します。 . それを説明しましょう。これが私の@fontface
ルールです:
@font-face {
font-family: 'hasoobCM';
src: url('/media/fonts/hasoob.eot'); /* IE9 Compat Modes */
src:url('/media/fonts/hasoob.eot?#') format('eot'),
url('/media/fonts/hasoob.woff') format('woff'),
url('/media/fonts/hasoob.ttf') format('truetype');
}
そして、フォント宣言は次のとおりです。
.hasoob { font-family: hasoobCM, Georgia, "Times New Roman"; }
Georgia
これで、テキストのローマ字は ではなくの文字になりますhasoobCM
。
そして面白いのは、フォントを として宣言すると.hasoob { font-family: hasoobCM; }
、問題が解決され、文字が正しくレンダリングされることです。問題は、フォントサイズに一貫性がないため、それができないことです。
では、ブラウザにフォントのすべての文字セットを使用させるにはどうすればよいでしょうか?
ところで、ルールには a がありunicode-range
ます@fontface
が、フォントの正確な完全な文字セット範囲はわかりません。それで問題が解決するかどうかはわかりません。