开发者

Using a custom font with CSS3/HTML5?

I have this code in the beginning of my CSS stylesheet (linked to my index.html, of course):

@font-face {
    font-family: "Calibri";
    src: local("Calibri"), local("Calibri"), url("fonts/Calibri-Bold.otf") format("truetype");
}

And i'm using:开发者_开发技巧

#id {
font-family: Calibri, Verdana, Arial, sans-serif;
}

But it still doesn't work. What's wrong with my code?


You have local("Calibri") repeated twice in your src property.

Also, keep in mind that IE does not support local() so if you are viewing your site in IE, it won't load the font. On top of that, IE, to my knowledge, only supports the EOT format.

For an OTF font, use format("opentype") (you have "truetype").

One more thing: If this is Microsoft's Calibri font, keep in mind that the license may not permit this type of use. I'm not familiar with the license so can't say for sure if this is the case.


In general, the accepted code to use at the moment is this:

@font-face {
  font-family: 'Graublau Web';
  src: url('GraublauWeb.eot');
  src: local('☺'),
    url("GraublauWeb.woff") format("woff"),
    url("GraublauWeb.otf") format("opentype"),
    url("GraublauWeb.svg#grablau") format("svg");
}

as suggested by Paul Irish: http://paulirish.com/2009/bulletproof-font-face-implementation-syntax/

The smiley for local is because you can't be sure the user's local file is the one you intend to be (read the page for the details, it's an interesting read.)


RESOLVED: it supports TTF (not OTF) files.


Not an expert on the matter but you could try this tool here.

It might at least help generate an example of what you should have.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜