在网上搜索,我发现了一堆不同的建议,什么正确的MIME类型的字体是,但我还没有尝试任何MIME类型,使我摆脱Chrome警告,如以下:
资源解释为字体,但使用MIME类型font/otf传输
字体是OTF。
到目前为止,我已经尝试了以下MIME类型
字体/传递 应用程序/ font-otf 应用程序/字体 应用程序/传递 应用程序/八进制 应用程序/ x-font-otf application/x-font-TrueType(我知道这不是truetype,但有一个来源引用了OTF)
在网上搜索,我发现了一堆不同的建议,什么正确的MIME类型的字体是,但我还没有尝试任何MIME类型,使我摆脱Chrome警告,如以下:
资源解释为字体,但使用MIME类型font/otf传输
字体是OTF。
到目前为止,我已经尝试了以下MIME类型
字体/传递 应用程序/ font-otf 应用程序/字体 应用程序/传递 应用程序/八进制 应用程序/ x-font-otf application/x-font-TrueType(我知道这不是truetype,但有一个来源引用了OTF)
当前回答
Application /font-woff for woff: http://www.iana.org/assignments/media-types/application/font-woff
其他回答
在Apache和IIS服务器上,有许多可以设置MIME类型的字体格式。我通常在以下方面比较幸运:
svg as "image/svg+xml" (W3C: August 2011)
ttf as "application/x-font-ttf" (IANA: March 2013)
or "application/x-font-truetype"
otf as "application/x-font-opentype" (IANA: March 2013)
woff as "application/font-woff" (IANA: January 2013)
woff2 as "application/font-woff2" (W3C W./E.Draft: May 2014/March 2016)
eot as "application/vnd.ms-fontobject" (IANA: December 2005)
sfnt as "application/font-sfnt" (IANA: March 2013)
根据互联网工程任务组谁维护关于多用途互联网邮件扩展(MIME类型)的初始文档在这里:https://www.rfc-editor.org/rfc/rfc2045#section-5…它具体地说:
“预计将增加到更大的一套 受支持的类型通常可以通过创建new 这些初始类型的子类型。将来会有更多的顶级类型 只能通过对本标准的标准轨道扩展来定义。 如果出于任何原因要使用另一个顶级类型,那么它必须是 以“X-”开头的名称表示其非标准状态 并避免与未来的正式名称发生潜在冲突。”
实际上,随着时间的推移,随着标准的创建和接受,会添加更多的MIME类型,因此我们看到了特定于供应商的MIME类型的例子,例如vnd。Ms-fontobject之类的。
2013年8月16日更新:WOFF于2013年1月3日在IANA正式注册,Webkit已于2013年3月5日更新,在其最新版本中来源此更新的浏览器将开始发出关于使用旧x-font-woff声明的服务器MIME类型的警告。由于警告只是恼人的,我建议切换到批准的MIME类型马上。在理想的情况下,这些警告会及时自行消除。
2015年2月26日更新:WOFF2现在在W3C编辑器草案中,并提出了mime类型。根据最近的进展时间表,报告可能在明年(可能在2016年底)提交IANA。还有SFNT,可伸缩/样条容器字体格式,用于谷歌Web Fonts的骨干表引用及其sfntly java库,并且已经在IANA注册为mime类型,也可以根据个人需要添加到此列表中。
2017年10月4日更新:我们可以在这里跟随WOFF2格式的发展,大多数现代浏览器都成功支持该格式。同样,我们可以遵循IETF的“字体”顶级媒体类型征求意见(RFC)跟踪器和文档,以获得最新的字体类型建议。
对于那些希望在CSS中以适当的顺序嵌入字体的人,请访问这篇文章。但同样,我在以下顺序上很幸运:
@font-face {
font-family: 'my-web-font';
src: url('webfont.eot');
src: url('webfont.eot?#iefix') format('embedded-opentype'),
url('webfont.woff2') format('woff2'),
url('webfont.woff') format('woff'),
url('webfont.ttf') format('truetype'),
url('webfont.svg#webfont') format('svg');
font-weight: normal;
font-style: normal;
}
对于Subversion自动属性,这些可以被列出:
# Font formats
svg = svn:mime-type=image/svg+xml
ttf = svn:mime-type=application/x-font-ttf
otf = svn:mime-type=application/x-font-opentype
woff = svn:mime-type=application/font-woff
woff2 = svn:mime-type=application/font-woff2
eot = svn:mime-type=application/vnd.ms-fontobject
sfnt = svn:mime-type=application/font-sfnt
关于Apache 2.2 VirtualHosting和mod_mime在Debian Linux和OS X Leopard和Snow Leopard上测试的FWIW:
如果你有一个VirtualHost配置,你会希望通过AddType指令添加类型,至少在配置的底部,如下所示:
....
AddType font/opentype .otf
AddType font/ttf .ttf
</VirtualHost>
在Chrome不稳定/Trunk和Safari WebKit Nightly上测试,消除了ttf和otf字体类型的mime八字节流警告。
注意:.htaccess在处理VirtualHosting时无效。如果你正在为几个网站开发,你将使用VirtualHosting开发,每个配置都需要这些AddType添加。
一种方法来沉默这个警告从Chrome将更新Chrome,然后确保你的mime类型是其中之一:
"font/ttf"
"font/opentype"
"application/font-woff"
"application/x-font-type1"
"application/x-font-ttf"
"application/x-truetype-font"
这个列表是在webkit.org的Bug 111418中找到的补丁。
同样的补丁将该信息从“警告”降级为“日志”,所以只要将Chrome升级到2013年3月的任何版本就可以摆脱黄色三角形。
既然这个问题是关于关闭Chrome警告的,而人们可能出于各种原因仍在使用旧的Chrome版本,我认为这一点值得补充。
Application /font-woff for woff: http://www.iana.org/assignments/media-types/application/font-woff
自2017年2月起,RFC 8081增加了字体/*媒体类型,这些类型也列在IANA媒体类型列表中。Font /otf在这个列表中。