【问题标题】:@font-face not working, fonts seems not to be loaded@font-face 不工作,字体似乎没有加载
【发布时间】:2014-08-23 15:47:54
【问题描述】:

我正在使用以下 css 来移植我自己的字体(在我的本地机器上):

@font-face {
font-family: 'byekan';
src: url('~/Content/fonts/BYekan.eot');
src: url('~/Content/fonts/BYekan.eot?#iefix') format('embedded-opentype'),
   url('~/Content/fonts/BYekan.woff') format('woff'),
   url('~/Content/fonts/BYekan.ttf')  format('truetype'), 
   url('~/Content/fonts/BYekan.svg#svgFontName') format('svg'); 
}
* {
    font-family: 'byekan';
}

但它不起作用,我注意到的一件事是字体没有加载到资源选项卡中。这些元素将其字体系列设置为 byekan,但似乎由于某种原因未加载字体。有什么想法吗?

编辑:我尝试使用我的浏览器访问该路径,它给出了以下 http 错误:

HTTP Error 403.14 - Forbidden

【问题讨论】:

  • 字体文件夹中有所有可用的字体格式吗?您可以在fontsquirrel.com/tools/webfont-generator 生成所有网络字体格式
  • 是的,字体在字体文件夹中可用
  • 以及默认使用font-weight: normal;font-style: normal;
  • 没有任何区别,我使用你给我的链接生成字体,它也不适用于新生成的字体
  • 能否请您创建一个 JSFiddle 来说明您的问题?

标签: css fonts font-face


【解决方案1】:

您遇到的问题是因为您使用 ~ 来选择您的主目录。

尝试将字体上传到其他地方并使用绝对 URL 路径引用文件:

url ('http://www.anywebsite.com/Content/fonts/BYekan.eot');

或以相对路径为例:

url ('Content/fonts/BYekan.eot');

在您的情况下,问题是因为您无法访问包含字体文件的目录,因为 CSS 不理解符号 ~ 来引用您的主目录。

【讨论】:

  • 按照您的第一个建议使用绝对 URL 路径效果很好,虽然第二个建议没有用,但我认为我必须坚持使用绝对路径。谢谢
  • 两者都运行良好,您需要确保相对路径是正确的路径。这可能会帮助你css-tricks.com/quick-reminder-about-file-paths
猜你喜欢
  • 1970-01-01
  • 2013-01-15
  • 2014-11-19
  • 2010-11-22
  • 2016-04-08
  • 1970-01-01
  • 2012-03-20
  • 2019-02-11
  • 2013-03-07
相关资源
最近更新 更多