Css 如何呈现许可的web字体?

Css 如何呈现许可的web字体?,css,webfonts,Css,Webfonts,我正在查看一个项目的源代码,其中使用了myfonts.com中的许可字体 css文件包含以下内容- /* @import must be at top of file, otherwise CSS will not work */ @import url("//hello.myfonts.net/count/123d4d"); @font-face { font-family: 'SoliPx'; src: url('webfonts/123D4D_1_0.eot')

我正在查看一个项目的源代码,其中使用了myfonts.com中的许可字体

css文件包含以下内容-

  /* @import must be at top of file, otherwise CSS will not work */
    @import url("//hello.myfonts.net/count/123d4d");

   @font-face {
  font-family: 'SoliPx';
  src: url('webfonts/123D4D_1_0.eot');
  src: url('webfonts/123D4D_1_0.eot?#iefix') format('embedded-opentype'),url('webfonts/123D4D_1_0.woff') format('woff'),url('webfonts/123D4D_1_0.ttf') format('truetype');
}
如源URL中所述,在project的本地webfonts文件夹中有eot、woff、ttf文件

我知道@font-face和webfonts通常是如何工作的

但是在上面使用许可/商业字体的情况下,我看不到Dev工具中下载的任何字体文件,但是文本是用指定的字体呈现的

有一个网络请求转到
hello.myfonts.net/count/123d4d
,状态为200,响应
内容类型为“text/css”,但响应正文中没有任何内容


内部发生了什么?这是如何工作的?

我以前处理过这个问题,下面是导入的文件的作用:

  • 就实际加载字体而言,它什么也不做。我之前(在测试时)忽略了它,字体可以从我的服务器上正常加载

  • 它统计CSS导入文件的次数(因此URL中的
    /count/
    )。如果您阅读myfonts.com webfont许可证,大多数webfonts都有每月页面浏览量上限。如果您通过该上限,myfonts将再次向您的帐户收费,或者建议您购买一个上限更高的新许可证

  • 所以我们这里真正拥有的是一个API端点,它返回一个空的CSS文件。每次加载CSS文件时,myfonts都会将每月页面浏览量的+1添加到与末尾哈希对应的帐户中,在您的例子中是
    123d4d


    再一次,这与加载字体本身无关。您的服务器上有这些文件,它们将在引用句号时加载。

    这个问题似乎与主题无关,因为它是关于许可的。@JukkaK.Korpela-请阅读我的问题-只想知道字体是如何呈现的,字体文件是如何隐藏的,这与许可条款无关。我认为您误解了@font-face的工作原理——(at)font-face声明是通过加载指定文件来呈现web字体的。如果你没有看到他们下载有一些可能性-首先,他们是缓存(仍应显示)或你有相同的字体安装在本地,在这种情况下,浏览器只是使用它。(at)导入不会影响字体的呈现,如果它不在文件顶部,则无法为您的字体注册页面视图。因此,MyFonts中CSS文件中声明导入的注释必须位于文件顶部,否则CSS将无法工作(参考计数脚本)实际上不是真的吗?他们只是在虚张声势,以确保你能计算出自己的观点?这在技术上是不正确的。它会起作用,但他们希望人们能将其包括在内,以获得准确的页面浏览量。一种合乎道德的方法是通过Javascript异步加载hello.myfonts.net URL。这样,MyFonts仍然可以获得页面视图,并且您的整个样式表不会被pagecounter URI(!)阻止。+1。崔斯坦·齐默尔曼,你抓得好。我在较慢的网络上测试我的站点,发现导入阻止了整个页面的呈现。不明白为什么myfonts.net关心页面浏览量。我确实为字体付费。你为webfont许可证付费,myfonts.net明确指出,webfont许可证仅限于特定数量的每月页面浏览量。这不是重点,@NickM只是说,如果你为字体付费,你可以期待一个非阻塞跟踪器