在@font-face CSS规则中,我们可以有一个单独的';src&x27;关于';本地';定义?

在@font-face CSS规则中,我们可以有一个单独的';src&x27;关于';本地';定义?,css,font-face,src,Css,Font Face,Src,下面是一个@font-face CSS规则示例: @font-face { font-family: 'DroidSerifBoldItalic'; font-weight: normal; font-style: normal; src: url('DroidSerif-BoldItalic-webfont.eot'); src: url('DroidSerif-BoldItalic-webfont.eot?#iefix') format('embedded-opentyp

下面是一个@font-face CSS规则示例:

@font-face {
  font-family: 'DroidSerifBoldItalic';
  font-weight: normal;
  font-style: normal;
  src: url('DroidSerif-BoldItalic-webfont.eot');
  src: url('DroidSerif-BoldItalic-webfont.eot?#iefix') format('embedded-opentype'),
       local('Droid Serif Bold Italic'), local('DroidSerif-BoldItalic'),
       url('DroidSerif-BoldItalic-webfont.woff') format('woff'),
       url('DroidSerif-BoldItalic-webfont.ttf') format('truetype');
}
你不觉得下面的@font-face CSS规则更好吗?(如您所见,浏览器(在本例中甚至是IE)可以在下载字体之前,首先检查用户计算机上是否有可用的字体。)


这里有什么陷阱吗?如果没有,为什么不是每个人都使用后者?

从我对@font-face的了解来看,使用local的主要担忧是,在某人的桌面上,字体的名称不会相同。你放弃了控制权,如果你错了,它就会失败。不过你提出了一个有趣的问题,我并不是说你错了。你可以阅读更多关于这个和


附录

通常,它在IE中使用

顺序很重要,因为IE(至少在IE8之前)不支持
local
描述符,并且将
local
描述符放在EOT字体格式之后,可以防止旧版本的Internet Explorer下载其他字体格式(在
src
声明中),因为它们不受支持,而且无论如何都不会被使用


@BoltClock的评论是正确的。这就是为什么我们使用两个
local
定义--
local('Droid Serif Bold-Italic')、local('DroidSerif-Bold-Italic')、
。第一个是字体的常规名称(除Safari外,所有浏览器都能识别),第二个是Safari所需字体的PostScript名称(至少在Mac/OS X系统上)


为了避免出现两种不同字体(主要是在两个不同的操作系统上)同名的问题,有些人只需使用
local(
local”)☺')

更令人恼火的是,一些浏览器在与
local()
@albert()匹配时可能会使用不同的字体族名称。我找到了答案。请在下面(或上面)检查我的答案:)你的意思是我在该链接中给了你答案。回答你自己的问题。让我讨厌帮你。@albert我很抱歉。但我只是引用了原文。我并不是有意要获得荣誉,只是没有注意到源链接是一样的(冷静点。我有时反应过度。很高兴你得到了答案
@font-face {
  font-family: 'DroidSerifBoldItalic';
  font-weight: normal;
  font-style: normal;
  src: local('Droid Serif Bold Italic'), local('DroidSerif-BoldItalic');
  src: url('DroidSerif-BoldItalic-webfont.eot');
  src: url('DroidSerif-BoldItalic-webfont.eot?#iefix') format('embedded-opentype'),
       url('DroidSerif-BoldItalic-webfont.woff') format('woff'),
       url('DroidSerif-BoldItalic-webfont.ttf') format('truetype');
}