在IE7和IE8中,使用自定義Web字體時,即使在明確設置font-style: normal
時,文本有時也會以斜體顯示。這個問題是零星的 - 它會渲染幾次,然後我刷新,一切都以斜體顯示,然後我刷新並恢復正常。自定義字體有時在IE8/IE7中以斜體顯示
我使用這個@font-face
聲明:
@font-face {
font-family: 'DIN';
src: url('fonts/DINWeb.eot');
src: url('fonts/DINWeb.eot?#iefix') format('embedded-opentype'),
url('fonts/DINWeb.woff') format('woff');
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: 'DIN';
src: url('fonts/DINWeb-Bold.eot');
src: url('fonts/DINWeb-Bold.eot?#iefix') format('embedded-opentype'),
url('fonts/DINWeb-Bold.woff') format('woff');
font-weight: bold;
font-style: normal;
}
@font-face {
font-family: 'DIN';
src: url('fonts/DINWeb-Ita.eot');
src: url('fonts/DINWeb-Ita.eot?#iefix') format('embedded-opentype'),
url('fonts/DINWeb-Ita.woff') format('woff');
font-weight: normal;
font-style: italic;
}
@font-face {
font-family: 'DIN';
src: url('fonts/DINWeb-BoldIta.eot');
src: url('fonts/DINWeb-BoldIta.eot?#iefix') format('embedded-opentype'),
url('fonts/DINWeb-BoldIta.woff') format('woff');
font-weight: bold;
font-style: italic;
}
即使世界上a commentthis article表示它可能是對@font-face
聲明的順序:但已停止這一問題的唯一的事情是完全移除斜體聲明。
Another Stack Overflow answer建議使用Font Squirrel @ font-face生成器;我無法做到這一點,因爲我使用的網絡字體文件有DRM。
有沒有辦法解決這個問題,而沒有完全刪除斜體聲明?
更新:經過進一步調查,似乎這個問題也影響IE8,而不僅僅是在兼容模式下。
您沒有提供您的HTML這是在使用中。嘗試使用獨特的'@ font-face'系列名稱。例如:'DINnormal,DINbold,DINitalic,DINboldItalic'。在這個[** SO Answer **](http://stackoverflow.com/a/10273361/1195891)查看CSS和HTML示例。如果創建獨特的名字可以解決您的問題,我會做出答覆。乾杯! – arttronics 2012-07-10 04:32:12
@arttronics謝謝,結果發現獨特的字體家族名稱最終解決了這個問題。如果你寫了一個答案,我會繼續接受它。 – 2012-09-03 05:24:25
亞當夏普,很高興爲你解決問題......我發佈了一個答案。乾杯! – arttronics 2012-09-03 21:10:46