1

とはfont-face作業できません。IE7IE8

私が使用したコードは次のとおりです。

@font-face {
    font-family: 'DroidSans';
    src: url('fonts/DroidSans.eot');
    src: url('fonts/DroidSans.eot?iefix') format('eot'),
         url('fonts/DroidSans.woff') format('woff'),
         url('fonts/DroidSans.ttf') format('truetype'),
         url('fonts/DroidSans.svg#webfont1BSMunJa') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'DroidSans';
    src: url('fonts/DroidSans-Bold.eot');
    src: url('fonts/DroidSans-Bold.eot?iefix') format('eot'),
         url('fonts/DroidSans-Bold.woff') format('woff'),
         url('fonts/DroidSans-Bold.ttf') format('truetype'),
         url('fonts/DroidSans-Bold.svg#webfont1BSMunJa') format('svg');
    font-weight: bold;
}
@font-face {
    font-family: 'Lobster';
    src: url('fonts/Lobster.eot');
    src: url('fonts/Lobster.eot?iefix') format('eot'),
         url('fonts/Lobster.woff') format('woff'),
         url('fonts/Lobster.ttf') format('truetype'),
         url('fonts/Lobster.svg#webfont1BSMunJa') format('svg');
    font-weight: normal;
    font-style: normal;
}

私はこれらの記事を読みました:

彼らはすべて、このソリューションはクロスブラウザー互換性があるはずだと述べています。

ブラウザの互換性: Safari、IE 6-9、IE 9 互換モード、Firefox、Chrome、iOS、Android、Opera

私は何を間違っていますか?これらの経験のある人はいますか?

ここでこれをテストしています:dev.holiday.ge/xhtml/

4

4 に答える 4

5

この Web サイトを使用して生成した .eot ファイル: http://fontface.codeandmore.com/には問題があり、つまり 7-8 ではそれらを検出できませんでした。私はhttp://www.fontsquirrel.com/を使用し、元のコードでフォントが正常に読み込まれるようになりました!

于 2012-04-29T14:54:30.270 に答える
1

私は以前にあなたの問題を抱えていました。私は簡単な解決策でそれを解決しました。私は 2 つの CSS ファイルを使用しています。1 つは IE 用、もう 1 つはその他用です。だから私<head>はこのようなものです:

<link href="styles/css.css" rel="stylesheet" type="text/css" />
<!--[if IE]>
  <link href="styles/css.ie.css" rel="stylesheet" type="text/css" />
<![endif]-->

そして、これらは私のCSSファイルです:

/* css.css */
@font-face {
    font-family: 'font';
    src: local("☺"),
    url("fonts/f1.woff") format("woff"),
    url("fonts/f1.ttf") format("truetype");
}

IE のみの CSS: ( eot )

/* css.ie.css */
@font-face {
    font-family: 'font';
    src: url('fonts/f1.eot');
}

これは私にとってはうまくいき、以前に何度も使用しました。

于 2012-04-27T11:38:24.263 に答える
0

Internet Explorer 8 以前のバージョンでは、@font-face ルールがサポートされていないためです。

http://www.w3schools.com/cssref/css3_pr_font-face_rule.aspを参照してください。

@font-face は CSS3 に属します http://www.w3.org/TR/css3-fonts/

別の Q/A IE ブラウザー (IE6、7、8) は @font-face をサポートしていますか?

公式/完全にサポートされていない機能 (css3 仕様を参照) は、いくつかのハックでまだ動作する (視覚的に近い) 場合があります。

ご覧のとおり、記事を書いた人はすでにこれを知っています

何?理解できません。

この作業を行う(ハック) トリックは、'?' です。EOT ファイル名に続きます。真剣に。

この URL は何らかの標準に適合すると思いますか? ここでは、ブラウザーのみが使用することを意図していることを思い出してください:fonts/DroidSans-Bold.eot?iefix
ある記事では、実際には IE のバグを回避するためのハックであると述べています。これらのバグが修正された場合はどうなりますか? それはまだ動作しますか?

参考までに、トライデント バージョンhttp://msdn.microsoft.com/en-us/library/ms530303(VS.85).aspxを参照してください。これは、ほとんどが標準と呼ばれるものですhttp://www.w3.org/TR/ css3-fonts/#font-resources http://en.wikipedia.org/wiki/Trident_(layout_engine)も参照してください

于 2012-04-27T10:15:54.897 に答える
0

Google Web Fontsを使用しない特定の理由はありますか? これらのフォントはどちらも既に存在しており、帯域幅をいくらか犠牲にすることではるかに簡単になります。私は常にそれらを使用していますが、IE 7-8-9 で 1 つの問題も経験していません。

編集:問題が発生する限り、よくわかりませんが、IE が 2 つの src 属性を受け入れないことについて読んだことを覚えています。または src 属性の複数の値。独自の css を使い続けることにした場合は、それを調べたいと思うかもしれません。

于 2012-04-27T10:38:01.457 に答える