2016-11-17 71 views
0

针对不同网站的许多样式表后,我一直注意到使用的字体或字体系列值,这些值似乎没有使用正确的字体系列名称。我想知道如果我不完全理解如何引用CSS使用的字体家族名称。是否包含连字符的字体系列名称与空格而不是连字符相同?

例如,在this stylesheet,作者用以下几次:

font-family:"minion-pro"; 

然而,据谷歌告诉我,没有这样的字体家族确实存在。例如,如果谷歌以下:

font minion-pro 

没有第几命中显示任何“马仔亲”,而是全部命中是“马仔”或“马仔临”;第五命中是this link,其中据我了解CSS,要求用户引用此字体作为

font-family: "Minion Pro"; 

我也看到了这对一些样式表的字体“无数亲”,当你谷歌这font myriad-pro,只返回字体“Myriad”和“Myriad Pro”的匹配。也就是说,在CSS样式表,我已经看到了这

font-family: "Myriad-Pro"; 

但对我来说,这是不正确的,应该是

font-family: "Myriad Pro"; 

所以我简单的问题是:是含有能够空格字体如果空格被连字符替换,那么要正确渲染?

我相信这个答案是基于文档的“否” - 我不能轻易测试这个,因为我没有方便地访问这些字体,而且我现在正在工作。 (当我尝试使用“Myriad Pro”或“Minion Pro”进行编码时,没有任何反应 - 字体无法识别)

回答

1

这取决于您创建@font-face字体定义以提供字体时所指定的字体系列。

像这样:

@font-face { 
    font-family: 'montserratregular'; 
    src: url('/content/fonts/Montserrat/montserrat-regular.eot'); 
    src: url('/content/fonts/Montserrat/montserrat-regular.eot?#iefix') format('embedded-opentype'), 
     url('/content/fonts/Montserrat/montserrat-regular.woff2') format('woff2'), 
     url('/content/fonts/Montserrat/montserrat-regular.woff') format('woff'), 
     url('/content/fonts/Montserrat/montserrat-regular.ttf') format('truetype'); 
    font-weight: normal; 
    font-style: normal; 
} 

在这种情况下,我会在我的CSS参考font-family: 'montserratregular';。但如果在@font-face声明中我定义了font-family: 'montserrat-regular';font-family: 'montserrat regular';那么我会在我的css中使用它。

在样式表中,你链接作者可能有他的@font-face声明在一个单独的css文件中,他将Minion Pro定义为“minion-pro”,这很常见。

您不向客户端提供的其他字体System字体应由其系统字体名称引用。您可以使用类似CSS Font Stack这样的站点来查看这些名称以及它们是Windows还是Mac上的系统字体的可能性(以百分比表示)。它还提供了字体的常见回退(即,您可以这样做:font-family: 'Myriad Pro', 'Myriad-Pro', 'MyriadPro', Arial;)。

像Myriad Pro或Minion Pro这样的字体在默认情况下通常不会作为已安装的系统字体出货,这就是为什么我们使用@font-face方法将字体提供给客户端的原因。我的用户可以在他们的机器上安装Myraid Pro,然后它将是一个系统字体,但是您必须知道确切的名称,并且不能保证用户具有唯一字体,或者需要访问您的站点的用户手动安装它。

+0

很好的解释 - 感谢您花时间详细回答 –

相关问题