css中的@ font-face声明不起作用

时间:2009-02-18 19:40:19

标签: html css fonts font-face

我正在帮助我的姐姐将一个有人为她做的网站转换为html。

他们使用flash中的花哨字体,我试图通过@ font-face在css文件中定义。我尝试在firefox,IE和chrome中打开页面,但我没有看到正确的字体。

我使用的声明是:

@font-face {
  font-family: "VAG Rounded";
  src: url("http://judith.huinink.net/chilax/VAGROUNL.OTF");
}

http://judith.huinink.net/chilax/index.htm包含html。

http://judith.huinink.net/chilax/chilax.css包含完整的CSS。

我检查过我可以下载字体文件,但是当我在浏览器中打开页面时它根本不使用该字体。我必须忽视一些事情。有人有什么建议吗?

7 个答案:

答案 0 :(得分:9)

font-face成为主流

截至2010年1月,所有主流新浏览器都支持font-face

  • Safari 3.1
  • IE - 所有版本
  • Firefox 3.6
  • Chrome 4
  • Opera 10

请参阅http://webfonts.info/wiki/index.php?title=@font-face_browser_support

答案 1 :(得分:6)

<强>更新

去年,浏览器对字体的支持相当显着。我建议阅读Tim Brown's excellent article on the subject,其中详细介绍了如何在大多数现代浏览器中使用网页字体。

原始回答

实际上,@font-face现在完全无法使用。只有两个浏览器支持它 - 适用于Windows的Internet Explorer,版本5或更高版本以及Safari 3.1。

更糟糕的是,IE和Safari不支持相同的字体格式。 IE仅支持EOT,而Safari则支持更常见的TrueType(.ttf)和OpenType(.otf)格式。

答案 2 :(得分:5)

几乎没有浏览器支持@ font-face:When can I use...

答案 3 :(得分:3)

答案 4 :(得分:2)

如何在支持它的所有浏览器中使用@ font-face:Jon Tangerine's blog

ttf2eot对于Unix和Windows来说是一个不错的字体转换器,因此您不必使用可怕的旧版Microsoft WEFT。它转换整个字体,而不仅仅是一些字符。

Here's用于sIFR的javascript,用于禁用支持@ font-face的浏览器的sIFR。

Flash需要死掉,所以这是sIFR的另一种替代方法:facelift。它是生成图像的服务器端脚本。

afaik所有sIFR替换的问题在于选择和复制文本并不真正起作用 - 您要么没有看到选择,要么选择少于一个单词或一行。还有Cufón使用&lt; canvas&gt;,因此它只适用于较新的浏览器,其中大多数都有@ font-face。

做正确的事情,现在使用最先进的技术:@ font-face与TTF或OTF,以及IE和旧浏览器的后备。最好保持HTML清洁,并在单独的javascript和CSS文件中实现这些后备。对于IE,您可能需要使用“条件注释”,如上面的第一个链接中所述。对于禁用了javascript的浏览器,请始终在最后使用Web安全字体指定替换字体列表。

答案 5 :(得分:1)

查看广受欢迎的sIFR或没有依赖Flash的typeface.js

答案 6 :(得分:1)

我遇到过WWW必须包含在域中的情况。没有它,它就行不通。