FirefoxとChromeではフォントの表示が異なります


14

FirefoxのメニューバーはChromeとは異なるフォントストレッチで表示されているようです。以下を参照してください。

異なるフォントストレッチ

この要素に適用されるCSSは次のとおりです。

font-variant: small-caps;
font-size:13px;
letter-spacing: 0px;
font-family: Arial;
font-stretch: normal;
text-decoration: none;

そのフォントに関するすべてがまったく同じであると言えますが、それでも表示が異なります(写真を参照)。どうして?


1
最初にCSSをリセットしましたか?
kei

@kei:リセットは効果があるとは思えない
五郎

面白い。私はあなたの画像と同じ結果を得ています:jsfiddle.net/YGwcn 各ブラウザーがスタイルをどのように解釈するかにかかっているようです。
kei

回答:


14

ChromeはWebKitレンダリングエンジンを使用します。FirefoxはGeckoエンジンを使用します。IE9 +およびOperaで使用されているDirectXおよびVegaグラフィックエンジンと同様に、タイプの解釈と表示はわずかに異なります。

ブラウザに強制的にテキストを同じように表示させることはできませんが、ナビゲーションがブラウザ間で同じ幅を占めるようにするためにいくつかのことを行うことができます。

  1. ナビゲーションバーの要素には、タイプではなく画像またはSVGを使用します。これは、ナビゲーションエリアが頻繁に変更される可能性が低い場合に役立つことがあります。例:www.apple.com

  2. CSSで各ナビゲーション要素の幅を修正します。テキストサイズはブラウザによって異なり<li>ますが、ナビゲーション領域の各要素に固定ピクセル幅を指定すると、各リンクの境界ボックスはブラウザ間で非常に似たものになり、ナビゲーション領域の合計幅は同じになります。


5
「ナビゲーションバーの要素にタイプではなく画像を使用する」などのことに注意して変更する必要があります。高解像度ディスプレイを備えた新しいマシン(例:Apple "Retina"ディスプレイ、その他のスマートフォン)では、倍解像度のコピーも提供しない限り、画像はひどく見えます。
オリーホジソン

@OllyHodgson確かに。ダブルサイズのPNGまたはSVG(Appleがナビゲーションに使用しているもの)は、高解像度の画面に最適です。
ニック

@Nick-はい、SVGが最適なソリューションです。
m93a

この場合はそうではありません。Firefoxはletter-spacingSVG要素をサポートしていません。
Yay295

@ Yay295 SVGでフォントのアウトラインを作成できます。
ニック

5

異なるブラウザ間(および異なるオペレーティングシステム上)でのフォントレンダリングの違いは、現実です。フォントが異なる幅で表示される場合でも、デザインで対処できることを確認する必要があります。


2

誰かがこれに出くわした場合、私にとって問題はでしたletter-spacing。ChromeとFirefoxは、プロパティの扱いが異なります。

私の問題は、letter-spacing他の要素の位置に影響を与えることでした。特にnavメニューのいくつかの画像。プロパティを削除することで、私の問題は即座に解決されました。

また、 .point値を使用すると、2つのブラウザー間で変更効果が生じる可能性があることも読んでいます。



0

Webkitはフォントサイズのpxをサポートしていることがわかりましたが、emを使用しない場合、文字間隔などの場合はそれらをすべて無視します。


0

2つのOSで6つのブラウザー/ 4レンダリングエンジンをテストした後。ほとんどの場合、行間隔があっても同じであることがわかりました。WindowsとLinuxの違いをすぐに調べます。

Palatinoフォントはどこでも利用できると思いましたが、クロムはわずかに小さいローマの時代に戻りました。

とにかく、時間romanを指定する場合、または@fontfaceを使用してフォントファイルを指定する場合!あなたはあなたのナビゲーションバーをより滑らかにすることができるかもしれません;-)


0

私は同様の問題を抱えていて、解決策を見つけました:

を使用して:

font-family: 'Donegal One', serif;
font-variant: small-caps;
text-rendering: optimizeLegibility;

Firefoxでは、見栄えがいいです。Chromeでは、文字の間隔が奇妙でした。を削除するoptimizelegibilityスタイルを、トリックが行われました。両方のブラウザが同じようにレンダリングされるようになりました。

Webkitのスタイルを削除し、他のブラウザー用にそのままにしておくことにしました。今は問題ありません。


0

私はOpen-Sansで同様の問題を抱えていました。

-webkit-font-smoothing: subpixel-antialiased;
font-smoothing: subpixel-antialiased;
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.