当我们定义@ font -face样式时,我们可以定义引用的文件是用于字体的粗体、斜体还是粗体斜体版本,如下面的SO问题中所讨论的:
How to add multiple font files for the same font?
示例:
@font-face {
font-family: 'FontinSans';
src: local('☺'), url('fontin_sans_regular.woff') format('woff');
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: 'FontinSans';
src: local('☺'), url('fontin_sans_bold.woff') format('woff');
font-weight: bold;
font-style: normal;
}然而,Font Squirrel不会以这种方式生成@font-face工具包。相反,他们会这样做:
@font-face {
font-family: 'FontinSans';
src: local('☺'), url('fontin_sans_regular.woff') format('woff');
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: 'FontinSansBold';
src: local('☺'), url('fontin_sans_bold.woff') format('woff');
font-weight: normal;
font-style: normal;
}这意味着在我们的CSS文件中,我们必须这样做:
h2 {
font-family: 'FontinSansBold', Verdana, sans-serif;
font-weight: normal;
}为什么Font Squirrel不使用font-weight和font-style声明来区分粗体和斜体呢?为什么要使用单独的字体系列?他们是否了解(缺少)某些浏览器对此功能的支持?
发布于 2010-09-26 05:28:47
默认情况下,字体松鼠这样做是为了增加对不遵循规范的用户代理(忽略font-weight和font-style的用户代理)的支持。
如果您不关心那些过时的用户代理,您可以启用@font-face工具包生成器的expert部分中提供的"Style Linking“选项。请注意,IE8和更低版本会忽略编号的font-weight值,并且仅支持normal和bold (以及相应的400、700权重值)。
发布于 2011-04-14 08:34:40
它确实涉及到检查字体内部,以确定字体是粗体还是斜体。并且必须在字体内设置某些位,以便IE拾取样式链接。大多数粗体/斜体字体都设置了这些位,但不是全部。我们正在研究一种使其更加自动化的方法。
发布于 2011-03-26 03:05:12
看起来Internet Explorer8可能是不支持字体粗细和字体样式的“老”用户代理之一
我正在尝试使用@font-face和font-family使粗体/斜体/粗体自动显示。
到目前为止,我的尝试一无所获。这里有一个页面演示了这个问题。
http://clearimageonline.com/apps/playground/fonts/test_IE.html
这里有没有人遇到过这种情况,并且有一个可以使用IE8的解决方案?
我在这周的大部分时间里都在搜寻和摆弄这个问题的答案。看来IE8不会让我这么做的。
这是一个建议的变通方法(非常丑陋的变通方法)...
http://clearimageonline.com/apps/playground/fonts/proposed_IE.html
这些测试页仅为Internet Explorer设计。此测试仅限于IE。跨浏览器功能显然将是最终解决方案的一部分。
https://stackoverflow.com/questions/3795611
复制相似问题