0

ほとんどのラテン文字のみをサポートする Web フォントを使用しています。ただし、ウェブサイトは多言語であり、ロシア語は言語の 1 つです。ご存じのように、ロシア語はキリル文字で構成されており、二次的なフォント ファミリで表示されます。Verdana + font-weight:bold が良い代替手段であることがわかりました。

ただし、font-weight bold は Verdana のみに関連付ける必要があるため、Web フォントを太字で表示してはならないため、通常の CSS にそのまま書き込むことはできません。ここで、うまくいかなかったいくつかの試み:

CSS:

@font-face {
  font-family: "some Webfont";
  src:url('xyz.eot')
}


/* The font-weight won't work here */
@font-face {
  font-family: "Verdana-Bld";
  src:
    local('Verdana');
  font-weight:bold;
}



/* Doesn't work in IE9 at all */
@font-face {
  font-family: "Verdana-Bld";
  src:
    local('Verdana Bold');
}

/* Doesn't work in IE9 at all */
@font-face {
  font-family: "Verdana-Bld";
  src:
    local('Verdana Bold');
}

.container {
  font-family:"some Webfont", "Verdana-Bld";
}

したがって、font-face はおそらくここでは解決策ではありません。Verdana Bold は良い方法のようですが、次のように通常の CSS で使用すると機能しません。

.container {
  font-family:"some Webfont", "Verdana Bold";
}

@font-face を使用すると、そのフォントが検出されてレンダリングされますが、font-family として使用する場合はわかりませんか?

4

2 に答える 2

1

Verdana Bold は実際には Verdana フォント ファミリの単なる書体であり、設定して使用する必要がありますfont-family: Verdana; font-weight: bold。場合によっては、書体の名前を の値として宣言することにより、書体をフォント ファミリのように使用することができますがfont-family、これはブラウザに依存し、フォントにも依存します。Verdana Bold の場合、このトリックは機能していないようです。これまで見てきたように、使用するより複雑なトリックは@font-face一部のブラウザーでは機能しますが、すべてのブラウザーでは機能しません。これは、使用するフォント名にも依存します (たとえば、「フル フォント名」Verdana Boldと PostScript フォント名Verdana-Bold)。

したがって、別のアプローチが必要です。必要なすべての文字をカバーするフォントを探してみてください。たとえば、Google web fontsでは、「スクリプト」を「キリル文字」に設定して、ロシア語の文字をサポートするフォントを見つけることができます。このようなフォントは通常、ラテン文字もサポートしています。

于 2013-01-24T11:26:36.000 に答える
0

そのため、font-face の font-weight は font-weight を設定しませんが、ブラウザーが使用するフォントが適切かどうかを判断するためのフィルターのようなものです。したがって、ブラウザが表示するフォントを調べると、現在のテキストが太字の場合に限り font-weight: bold を設定した font-face が選択され、他の状況では他のフォントが使用されます。

これを font-face で直接呼び出せば、実際には 1 つのフォントをボールドにし、もう 1 つのフォントを通常にすることは可能だと思います。(したがって、次のようなものがあればlocal('Verdana Bold')。次に font-face:bold を取り除くだけで問題なく動作するはずです。

于 2013-01-24T10:52:42.273 に答える