首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >@font-face指向本地文件的url

@font-face指向本地文件的url
EN

Stack Overflow用户
提问于 2012-08-05 05:24:49
回答 3查看 59.8K关注 0票数 33

我需要在html文件中包含一个字体(OpenSymbol),而该字体文件位于本地文件夹中(我知道它的确切绝对路径)。如果我像这样使用@font-face:

代码语言:javascript
运行
复制
@font-face {
  font-family: "OpenSymbol";
  src: url("<absolutePath>/OpenSymbol.ttf") format("truetype");
}

它适用于Chrome、Opera和Safari浏览器,但不适用于火狐和IE9。其他@font-face用法在所有浏览器中都工作得很好。

顺便说一句,在Chrome中,我得到了一个警告:

代码语言:javascript
运行
复制
Resource interpreted as Font but transferred with MIME type application/octet-stream

如何才能干净地包含本地存储的字体,该字体是操作系统上未安装的字体( not installed )?

编辑:

我发现列出不同的urls似乎不起作用!如果我把[...].ttf url放在第一位,Chrome就会加载字体,但如果它在其他地方就不会了!

第二版:

我让它在除了firefox之外的所有浏览器上都能工作:

代码语言:javascript
运行
复制
@font-face { 
  font-family: 'OpenSymbol';
  src: url('file:<path>/openSymbol.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
@font-face { 
  font-family: 'OpenSymbolEOT';
  src: url('file:<path>/openSymbol.eot') format('embedded-opentype');
  font-weight: normal;
  font-style: normal;
}
...

然后

代码语言:javascript
运行
复制
.element {
  font-family: OpenType, OpenTypeEOT, [...];
}

无论如何,它可以在IE中工作,但不能在使用IE渲染引擎的eclipse中工作。o.O

顺便说一句,火狐有问题是因为安全问题:See here

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11812111

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档