1

そのため、IE9 は、次のような Google フォント インクルードを使用するとエラーを吐き出します。

<link href="https://fonts.googleapis.com/css?family=Lato:300,400,700,900" rel="stylesheet" type="text/css" />

IE9 は、フォントがまだ正常に読み込まれているにもかかわらず、エラーを吐き出します。

CSS3111: @font-face encountered unknown error. 

他の人の Web ページに iframe されたコンテンツを書いていなければ、このエラーは喜んで無視します。:(

EOT ファイルをローカルでホストすると、IE の問題が解決します。

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

そして、そのファイルで..

@font-face {
    font-family: "Lato";
    font-style: normal;
    font-weight: 400;
    src: url("/Lato-Reg-webfont.eot") format("embedded-opentype");
}
@font-face {
    font-family: "Lato";
    font-style: normal;
    font-weight: 900;
    src: url("/Lato-Bla-webfont.eot") format("embedded-opentype");
}

IE9 に含めると、エラーがなくなり、うまく機能します。

今私の問題は、IE9以外のすべての人にGoogleフォントスタイルシートを含める必要があることです。たとえば、私はできません:

< !--[if !IE 9]>
< link href="https://fonts.googleapis.com/css?family=Lato:300,400,700,900" rel="stylesheet" type="text/css" />
< ![endif]-->

または、Firefoxはいまいましいインクルードを認識しません。

IE の開発者は、私たちの時間を無駄にしようと共謀していますか?

4

2 に答える 2

3

あなたは正しい軌道に乗っていました.ダウンレベルで明らかにされた条件付きコメントを使用する必要があるだけです.IEからは隠されますが、他のブラウザによって拾われます.

于 2012-08-12T01:32:20.770 に答える
0

1つの質問ですが、ファイルをローカルで表示しようとしていますか?

googleフォントは、絶対的な外部リンクにリンクされている場合でも、ローカルではレンダリングされません。(IEの場合)

localhost/project/index.html = good
C:\Project\index.html = bad
于 2012-08-09T18:00:06.710 に答える