7

別のフォントファミリに別のフォントサイズを指定する方法はありますか?私が使用したいフォント(製品のブランディングの目的で)は、すべてのPCとブラウザーでサポートされているわけではないやや珍しいフォント(FlashDLig)です。(IE9を搭載した1つのWindows7 PCでは表示されません...)Arialを使用するフォールバックフォントの場合、問題はarialがFlashDLigよりもはるかに大きいことです。そのため、で別のフォントサイズを指定します。同じクラス。出来ますか?

おそらくfont-size-adjustを使用できることは知っていますが、Firefoxでのみサポートされています。

助言がありますか?Javascriptの魔法かもしれませんか?

ありがとう

4

2 に答える 2

2

デフォルトを Arial にしてから、フォント用に宣言された @font-face を使用する 2 番目のクラスを作成することをお勧めします。次に、Javascriptを使用してフォントがロードできたかどうかをテストし(おそらく、画面外に配置した要素の派生スタイルを確認してください)、クラスを新しいものに変更する必要があると思います。カスタムフォントから始めるのではなく、そのようにする理由は、プログレッシブエンハンスメントの考え方に関係しています。

Javascript でクラスを変更する 1 つの方法を次に示します。

if (fontLoaded()) {
    document.body.className += " fontLoaded";
}

そして、あなたのCSSで:

@font-face {
    ... /* declare font face */
}
body {
    font-family: "Arial";
    font-size: 0.8em;
}
body.fontLoaded {
    font-family: "FlashDLig";
    font-size: 1em;
}
于 2012-06-13T21:01:16.567 に答える
0

次のコード例を見てください。

http://www.lalit.org/lab/javascript-css-font-detect/

http://remysharp.com/2008/07/08/how-to-detect-if-a-font-is-installed-only-using-javascript/

そして、検出結果からスタイルシートを調整します。

私はこれらをしばらく前に使用しましたが、良い結果が得られました。

幸運を!:)

于 2012-06-13T21:00:01.287 に答える