2

1 つのフォントは IE8 と IE9 の両方、および他のすべてのブラウザーで正常に動作しますが、2 つ目のフォントは IE9 と他のブラウザーでのみ動作します。IE8 では、次のエラーが表示されます。

「CSS3111: @font-face で不明なエラーが発生しました。」

私は周りを読んでいて、運が悪いことをたくさん試しました。

私のコードは次のとおりです。

<!DOCTYPE html>
<html lang="en">
<head>
<title>Test Site</title>
<meta charset="utf-8" />
<style type="text/css"> 
    @font-face {
        font-family: "Cake";
        src: url('cake.eot'); /* IE9 Compat Modes */ 
        src: url('cake.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ 
             url('cake.woff') format('woff'), /* Modern Browsers */ 
             url('cake.ttf')  format('truetype'), /* Safari, Android, iOS */ 
             url('cake.svg#svgCake') format('svg'); /* Legacy iOS */ 
    }
    p {
        font-family: "Cake";
    }
</style>
</head>
<body>
    <p>Testing font</p>
</body>
</html>

いくつかの異なるジェネレーターを使用して何度も eot を再生成しようとしましたが、CSS をいじったり、ヘッダーをいじったり、ドメインをいじったりしましたが、すべて問題ないようです。前述のように、同じコードが同じで、異なるフォント ファイルを指すだけで問題なく動作します。何らかの理由で、この 1 つのファイルは機能しません。ttfpatch プログラムを見てみましたが、フォントの tableversion は 3 であり、これは他の動作中のフォントと同じです。これらのフォントは、Type Light 3.2 と呼ばれるプログラムによって変更され、フランス語の文字がいくつか追加されましたが、前述のように、他のすべてのブラウザーで動作します。

どんな助けでも大歓迎です。ありがとう。

編集:

私が気づいたことの 1 つは、EOT ファイルが IE9 によって読み取られていないことです。WOFF ファイルを使用するだけで同じエラーが発生します。元のフォントはhttp://www.searchfreefonts.com/free/cake.htmからダウンロードできます。誰でもIE8で動作させることができますか?

編集2:

開発者ツールを見ると、eot フォントがダウンロードされているようで、正しいタイプです。304 応答コードが返されます。

4

3 に答える 3

2

これに対する解決策が見つかりませんでした。異なるコンピューターでフォントを何度も再ダウンロードして再生成し、表示するたびにキャッシュをクリアしても機能しませんでした。他のフォントは問題なく動作するので、私の結論は、eot ジェネレーターがそのフォントを気に入らないということです。

于 2012-07-09T18:34:29.073 に答える
0

font-faceジェネレーターを使用してみてください。

于 2012-06-20T03:43:26.790 に答える
0

このソリューションhttp://fontface.codeandmore.com/blog/ie-7-8-error-with-eot-css3111/を試してください。ユーザーにとって何度も機能したためです。

于 2013-05-06T14:58:16.513 に答える