33

http://www.google.com/webfonts (Dosis、Open Sans、Lato)から 3 つの Google フォントを埋め込みます。

そして、それが返されるIE9を除いて、それらはすべて正常に動作します:

CSS3111: @font-face encountered unknown error. 
2HG_tEPiQ4Z6795cGfdivPY6323mHUZFJMgTvxaG2iE.eot

CSS3111: @font-face encountered unknown error. 
KlmP_Vc2zOZBldw8AfXD5g.eot

CSS3111: @font-face encountered unknown error. 
zLhfkPOm_5ykmdm-wXaiuw.eot

そして時々ウェブサイト全体を壊します。

これを解決するにはどうすればよいですか?

4

7 に答える 7

27

私はこの回答を見つけました。これは、受け入れられた回答よりも直接的に質問に対処しています。これは、実際には回答ではないはずです:)

次に、主なハイライトである「CSS3111: @font-face に不明なエラーが発生しました」について説明します。このエラーは非常にあいまいです。MSDN をもう一度見ると、その説明に次のように記載されています。「Cascading Style Sheets ( CSS)フォント」。「不明な問題」という言葉は私にはあまり良く聞こえません。不明な問題をどのように解決すればよいのでしょうか? 幸いなことに、ここでヒントが得られます。「フォントのソースを確認してください」と書かれています。実際、CSS3111 は通常、フォントのバイナリ ソースの問題が原因で発生します。たとえば、一般的なオンライン TTF から EOT へのコンバーターの 1 つは、Microsoft の標準に準拠していない NAME テーブルを含む EOT ファイルを生成します。その結果、EOT フォントが IE に読み込まれず、CSS3111 エラーが発生します。そのため、CSS3111 に遭遇した場合は、常に別の TTF から EOT へのコンバーターまたはフォント フェイス ジェネレーターを使用してみてください。

ソース: http://www.marinbezhanov.com/web-development/16/how-to-embed-webfonts-properly-and-how-to-solve-the-ambiguous-css3111-font-face-encountered-unknown-エラー/

于 2012-12-30T16:39:38.397 に答える
5

以下を使用してIE 9の問題を解決しました@font-face

@font-face {
    font-family: Gidole;
    src: url('Gidole-Regular.woff2') format('woff2'),
         url('Gidole-Regular.woff') format('woff');
}
于 2016-10-09T08:11:46.897 に答える
3

新しい Windows 10 ポリシーが原因で、同じエラーが発生することがわかりました。エラーが Windows 10 + IE11 で発生した場合、解決策は次のとおりです。

IE 11: 自分のコードでエラー CSS3111 が発生し、google.com/fonts でフォントがレンダリングされない

于 2017-01-27T13:22:31.870 に答える
0

このエラーは、 desubroutinize d フォントを使用している場合にも発生する可能性があり、これを処理できる Internet Explorer のバージョンはないようです。

fonttoolsパッケージを使用pyftsubsetしてフォント ファイルを生成している場合は、フラグを設定していないことを確認してください。--desubroutinize

于 2017-09-29T16:12:01.683 に答える
-1

次のメモがお役に立てば幸いです。

フォントがリモート サーバー (CDN など) にある場合、すべてのブラウザーで適切にレンダリングされるわけではありません。それは部分的にしか当てはまりません。はい、明示的な「Access-Control-Allow-Origin」ヘッダーがないと、Firefox と Internet Explorer は Web フォントを表示しません (F12 を押して IE で開発者ツールを開き、コンソール タブに移動すると、CSS3117 が表示されます) : @font-face failed cross-origin request. Resource access is limited. error) これは単純に、IE と Firefox がデフォルトでクロスドメイン フォントを許可していないためです。一方、Google Chrome は問題なくフォントをロードします。クロスオリジンの問題を認識していない場合、これをデバッグするのは非常にイライラすることがあります。個人的にはフォントも同じドメインに配置することを好みますが、

<FilesMatch "\.(ttf|otf|eot|woff)$">
      <IfModule mod_headers.c>
          Header set Access-Control-Allow-Origin http://mydomain.com"
      </IfModule>
</FilesMatch>

リファレンスを見る

于 2012-07-19T11:19:13.333 に答える