使用@ font-face在IE中删除无格式内容

And*_*lly 7 css fonts internet-explorer font-face internet-explorer-7

我正在使用Open Sans字体作为正文文本,使用Font Squirrel生成的EOT,SVG,WOFF和TTF字体文件和样式表.我首先在页面标题中包含了我的字体CSS.但是当我在IE7,IE8甚至IE9中查看该网站时,我会在Open Sans开始之前获得Times Roman中的所有内容.这在其他浏览器中不会发生.

任何人都可以建议我可以阻止这种情况发生吗?这是我用于该字体的Font Squirrel CSS:

 @font-face {
    font-family: 'OpenSansRegular';
    src: url('opensans-regular-webfont.eot');
    src: url('opensans-regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('opensans-regular-webfont.woff') format('woff'),
         url('opensans-regular-webfont.ttf') format('truetype'),
         url('opensans-regular-webfont.svg#OpenSansRegular') format('svg');
    font-weight: normal;
    font-style: normal;
}
Run Code Online (Sandbox Code Playgroud)

Fel*_*Als 1

下载自定义字体时您看到的内容并未在上面的代码中定义。它在font-family整个 CSS 代码中的其他指令中定义。

在“OpenSansRegular”值后添加其他字体,以逗号分隔。从右到左:

  • 右侧是您的字体系列。serifsans-serifmonospacecursive是的 Comic Sans!)。这OpenSansSth是 ... sans-serif
    你的浏览器有这些家族的默认字体,Arial、Verdana 或 Linux 中的其他字体,等等。当你不为他选择时,这是用户的选择。默认字体是serif“Times New Roman”,Windows 中的默认字体是“Times New Roman”。这就是为什么您将 Times New Roman 视为 IE 中的 FOUC。
  • 然后是与您的自定义字体尽可能接近的网络安全字体。这里是无衬线字体,如 Verdana 或 Arial。也许 sans-serif 和 Verdana 是同一件事,但你永远不确定(特别是对于 Linux 用户),所以将两者都添加
  • 在自定义字体和网络安全字体之间,您可以添加可以在相当多的操作系统中安装但不是网络安全的字体,例如随 MS Office、Adobe Reader、OS X、Adobe Creative Suite 等安装的字体您可以在 10% 到 90% 的访问者计算机中找到它们,但不是 100%。并非每个人都安装 Creative Suite(仅网络专业人士和其他设计师)和 MS Office(我使用 LibreOffice),并且 XP、Vista 和 7 中安装了不同的字体
  • 最后,最左边的值将是您为自定义字体指定的自定义名称。OpenSansRegular在您的网站中

前任:

         nav { font-family: 'Custom_at-font-face','closest font to the font-face one but certainly rarely found on computers by default', 'less close, 'not close but same family', Verdana,sans-serif;
         }
Run Code Online (Sandbox Code Playgroud)

带百分比的兼容性表(可能有点旧)http://www.codestyle.org/css/font-family/
不要使用 10 个值,3 到 6 个就足够了;)在 2012 年 @font-face 可能会导致渲染问题取决于浏览器和操作系统(别名),但它得到了很好的支持,因此您可以缩短字体系列。