While Firefox 3.0 improved typographic rendering by introducing support for kerning, ligatures, and multiple weights along with support for rendering complex scripts, authors are still limited to using commonly available fonts in their designs. Firefox 3.5 removes this restriction by introducing support for the CSS @font-face rule, a way of linking to TrueType and OpenType fonts just as code and images are linked to today. Safari has supported this type of font linking since version 3.1, and Opera has announced that they plan to support it in Opera 10.

Using @font-face for font linking is relatively straightforward. Within a stylesheet, each @font-face rule defines a family name to be used, the font resource to be loaded, and the style characteristics of a given face such as whether it’s bold or italic. Firefox 3.5 only downloads the fonts as needed, so a stylesheet can list a whole set of fonts of which only a select few will actually be used.

/* Graublau Sans Web (www.fonts.info) */
 
@font-face {
  font-family: Graublau Sans Web;
  src: url(GraublauWeb.otf) format("opentype");
}
 
body {
  font-family: Graublau Sans Web, Lucida Grande, sans-serif; 
}

Browsers that support @font-face will render text using Graublau Sans Web while older browsers will render text using either Lucida Grande or the default sans-serif face. Example here:



Digging A Little Deeper

Most font families today consist of only four faces: regular, bold, italic and bold italic. To define each of these faces the font-weight and font-style descriptors are used. These define the style of the face; there’s no concept of a cascade or inheritance that applies here. Without an explicit definition each of these defaults to a value of ‘normal’:

/* Gentium by SIL International   */
/* http://scripts.sil.org/gentium */
 
@font-face {
  font-family: Gentium;
  src: url(Gentium.ttf);
  /* font-weight, font-style ==> default to normal */
}
 
@font-face {
  font-family: Gentium;
  src: url(GentiumItalic.ttf);
  font-style: italic;
}
 
body { font-family: Gentium, Times New Roman, serif; }

The sample text below when rendered with this font family:



A feature that’s easy to overlook is that @font-face allows the creation of families with more than just regular and bold faces — up to nine weights can be defined for a single family. This is true even on Windows, where underlying platform limitations usually restrict font families to just regular and bold weights. Fonts such as those of the Japanese open source M+ Fonts project have as many as seven weights. A selection of these are used in the sample below:



In some situations, authors may prefer to use fonts available locally and only download fonts when those faces aren’t available. This is possible with the use of local() in the definition of the src descriptor of an @font-face rule. The browser will iterate over the list of fonts in the src descriptor until it successfully loads one.

/* MgOpen Moderna                      */
/* http://www.zvr.gr/typo/mgopen/index */
 
@font-face {
  font-family: MyHelvetica;
  src: local("Helvetica Neue"), 
       local("HelveticaNeue"), 
       url(MgOpenModernaRegular.ttf);
}
 
@font-face {
  font-family: MyHelvetica;
  src: local("Helvetica Neue Bold"), 
       local("HelveticaNeue-Bold"), 
       url(MgOpenModernaBold.ttf);
  font-weight: bold;
}
 
body { font-family: MyHelvetica, sans-serif; }

The screenshot below shows from top to bottom the results on Mac OS X, Windows and Linux for a simple testcase that uses the font family defined above:



The Helvetica Neue font family is available on most Mac OS X systems but generally on neither Windows nor Linux machines. When the example here is rendered on Mac OS X, the local Helvetica Neue faces are used and no font is downloaded. Under Windows and Linux the attempt to load a local font fails and a substitute font — MgOpen Moderna — is downloaded and used instead. MgOpen Moderna is designed to be a substitute for Helvetica, so it renders similarly to Helvetica Neue. This way, an author can guarantee text appearance but avoid a font download when it’s unnecessary.

The name used to refer to a specific font face is the full name for an individual font. Generally it’s the family name plus the style name (e.g. “Helvetica Bold”). Under Mac OS X, the name is listed in the information panel for a given face. Select a single face and choose ‘Show Font Info’ from the Preview menu in FontBook:

Similar tools exist under Linux. On Windows, use the font properties extension, a free download from Microsoft to view these names. With the extension installed, the properties panel shows information about an individual font. The full name is referred to as the “Font Name” on the Name tab:

Safari only supports PostScript name lookup under Mac OS X, so under Mac OS X Postscript names are also supported. For OpenType PS fonts (often labeled with an .otf extension) the full name is the same as the PostScript name under Windows. So for these fonts, authors are advised to include both the full name and the PostScript name for cross-platform interoperability.

Supporting Many Languages

Many languages suffer from a lack of commonly available fonts. For minority languages and ancient scripts, the options often dwindle to just a handful. The use of @font-face allows authors using these languages to ameliorate this by including fonts with their pages.

@font-face {
  font-family: Scheherazade;
  src: url(fonts/ScheherazadeRegAAT.ttf) format("truetype-aat"), 
       url(fonts/ScheherazadeRegOT.ttf) format("opentype");
}
 
body { font-family: Scheherazade, serif; }

Languages such as Arabic require text shaping, where the display of a given character is affected by the characters surrounding it. Different platforms support different rendering technologies to enable text shaping; under Mac OS X, AAT fonts are required while under Windows and Linux OpenType fonts are required. Without a font in a format required for a given platform, text shaping will not be rendered correctly.



Under Mac OS X, the AAT version of the font is downloaded. On Windows and Linux, where rendering with AAT fonts is not supported, the download of the AAT font is skipped and the OpenType font is used instead. Hence, the text is rendered correctly on all platforms.

Cross-Site Font Usage

By default, Firefox 3.5 only allows fonts to be loaded for pages served from the same site. This prevents sites from freely using fonts found on other sites. For sites that explicitly want to allow cross-site font sharing, an online font library for example, Firefox 3.5 supports the use of access control headers to control this behavior. By adding an additional header to the HTTP headers sent with font files, sites can enable cross-site usage.

# example Apache .htaccess file to add access control header
 
<FilesMatch "\.(ttf|otf)$">
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "*"
</IfModule>
</FilesMatch>

With this HTTP header enabled, any page can access the fonts on this site, not just pages from the same site.

Font Licensing Issues

When using a font for a website, it’s important to always confirm that the font license permits use on a website. If the license agreement is filled with opaque legalese, err on the side of caution and check with the font vendor before using a font on a site. If the license permits its use, it’s a good idea to add a comment near the @font-face rules that points to the license, for future reference.

“I found a free font, can I use it on my site?”

Maybe, maybe not. Some free fonts are distributed as teaser products to encourage a purchase and don’t allow for redistribution or posting on a web server. Check the license, even for free fonts.

“I just want to use [insert favorite font name here] on my site. Is that possible?”

Right now, probably not. The use of font linking on the web is still in its infancy. Most fonts that ship with proprietary OS’s today have licenses that limit their use to standard desktop applications, so uploading these fonts to a web server is almost certainly not permitted. Piracy has plagued the font industry in the past, so most font vendors are wary of allowing their fonts to be used except in relatively limited contexts. Many font vendors are focused on the needs of publishing and printing industries, and the relative complexity of their license agreements often reflects this. In the future, some font designers may conclude that the sales of fonts as web fonts will outweigh any potential loss in sales due to piracy, others may not. Their license agreements will reflect this choice and should be respected.

The stock photography market is often described as a $2 billion market but the web font market is still close to a $0 market, it can only go up!

Font Linking In Internet Explorer

Font linking has been possible with Internet Explorer but only for linking to fonts in the proprietary EOT font format. The only way to create EOT fonts is to use the Microsoft WEFT tool, available only on Windows. Only TrueType and OpenType TT fonts can be converted to EOT format, OpenType PS (.otf) fonts cannot be used.

Internet Explorer only recognizes the font-family and src descriptors within @font-face rules, so each family can only contain a single face. It doesn’t understand format() hints and will ignore any @font-face rule containing these hints. This behavior can be used enable font linking cross platform:

/* Font definition for Internet Explorer */
/*         (*must* be first)             */
@font-face {
  font-family: Gentium;
  src: url(Gentium.eot) /* can't use format() */;
}
 
/* Font definition for other browsers */
@font-face {
  font-family: Gentium;
  src: url(Gentium.ttf) format("opentype");
}

Future Work

For Firefox 3.5, the font-stretch and unicode-range descriptors are not supported. Fonts defined in SVG documents are also not supported yet. These are under consideration for inclusion in future releases. As always, patches are welcome!

Further Resources

Translations

Documentation

Examples

Font Resources

Font Politics

176 comments

Post a comment
  1. Pingback from nitot's status on Thursday, 11-Jun-09 15:54:37 UTC - Identi.ca on June 11th, 2009 at 8:54 am:

    [...] you ever wanted to know about beautiful fonts with CSS’ @font-face: http://ur1.ca/5ikf (via @mozhacks) [...]

    Reply

  2. Al wrote on June 11th, 2009 at 9:26 am:

    Fonts. About bloody time!!

    Awesome work, nicely explained… I am looking forward to using this stuff soon.

    Reply

  3. Josef wrote on June 11th, 2009 at 11:03 am:

    When we imagine that we’ll be able to do with we quckly understand that it will become essential.
    Great work!

    (ps : Sorry for my bad english I’m french ^^)

    Reply

  4. Joe Clark wrote on June 11th, 2009 at 11:39 am:

    You really haven’t addressed the fact that CSS weight definitions (bizarrely numeric) have no relation whatsoever, let alone a dependable authorial relation, to weights of actual typefaces.

    I thought it was cute you had to scour the entire world to find an open-source typeface with more than two weights. Because open-source fonts are the norm, after all.

    Reply

  5. James John Malcolm wrote on June 11th, 2009 at 12:12 pm:

    Great article!

    FireFox 3.5 doesn’t seem to pick up on “font-variant:small-caps” though when adding the small-caps variant via @font-face, which is a shame.
    (So if you put that in last, all text will default to the small-caps variant!)

    When is that feature planned?

    Reply

  6. Vladimir Dzhuvinov wrote on June 11th, 2009 at 12:21 pm:

    Does it work with XULRunner apps using chrome src URLs?

    Reply

  7. John Daggett wrote on June 11th, 2009 at 2:02 pm:

    @Joe Clark:
    The weight system in CSS is based on OpenType. In general 400 maps to normal, 700 to bold, but for a given family it’s completely subjective. And completely under your control as an author, the weight listed (or implied) in an @font-face rule is completely under your control. And the fonts chosen here are highlighted because they are available for use with @font-face.

    @James John Malcolm
    In general, most browsers don’t implement small caps *matching*, only “fake” small caps by swizzling around the font size. OpenType fonts implement the ability to define small caps as a variant, treating font-variant as a rendering property rather than a face selection property seems to be make sense. Although font designers do seem to still ship separate small caps faces (e.g. Axel), so it may be worth considering this addition in the future.

    Reply

  8. Alex wrote on June 11th, 2009 at 9:13 pm:

    Great article, cleared up a question or two I had (about local face matching via the name)

    One unfortunate thing is that Microsoft’s font properties extension is 32Bit only, leaving 64Bit users (like myself) out in the cold.

    Reply

  9. Dave Crossland wrote on June 12th, 2009 at 3:02 am:

    http://code.google.com/p/ttf2eot/ is a GPL EOT (de)converter, so when you say “The only way to create EOT fonts is to use the Microsoft WEFT tool, available only on Windows.” that is no longer true :-)

    Reply

  10. Edgar Leijs wrote on June 12th, 2009 at 3:50 am:

    Dear browser builders,

    Please please please implement all the CSS3 you can get. That will make the world much much better, and beautiful! Especially @font-face because it’s the feature we are all waiting for years now. Only thing to solve is the legal issue about fonts…

    Thanks for the article!

    Reply

  11. Al wrote on June 12th, 2009 at 4:40 am:

    Sometimes I wonder if there should be some kind of charity/publi-non-profit group that can fight for web standards, that are not already browser vendors or the W3C. There’s a giant hole in the web called “formats” and it’s leaking a lot of creativity.

    Reply

  12. John Daggett wrote on June 12th, 2009 at 4:54 am:

    @Alex:
    The other option is FontTools/TTX, it’s a bunch of Python scripts for dumping out font data. http://sourceforge.net/projects/fonttools/

    ttx -t name font.ttf

    Reply

  13. James John Malcolm wrote on June 12th, 2009 at 5:00 am:

    @John Daggett:
    Exactly, it’s extremely handy for fonts which have a seperate small-caps version. (Such as Fontin Sans[1], which I used on Standards.next)
    Webkit does already have support for font-variant:small-caps, although it doesn’t imply “font-weight:normal” or “font-style:normal” seemingly…

    [1] http://www.exljbris.nl/ -> Fontin Sans
    [2] http://standards-next.org/

    Reply

  14. Richard Fink wrote on June 12th, 2009 at 11:43 am:

    @john
    Thanks for the info and the fine work you’ve done. Truly.
    In line with discussing @font-face, there is a new and serious proposal regarding a web-specific file format on the table:
    The Proposal
    Discussion Of New Web Fonts Proposal on Typophile
    In-Depth Analysis: Apple and Microsoft In Talks On Web Font Protections

    I’d love to know your thoughts on the matter.

    Reply

  15. Pingback from 颠覆网络35天 ─ 美妙字体就用@font-face < MJiA on June 12th, 2009 at 11:10 pm:

    [...] 原文地址:beautiful fonts with @font-face [...]

    Reply

  16. John Daggett wrote on June 13th, 2009 at 5:43 pm:

    @Richard Fink
    I saw the Ascender proposal, I think it’s part of a larger discussion related to the whole font ecosystem. The @font-face mechanism is just one step that enables wider use of typographically rich fonts on the web. A lot more thought needs to occur related to the business model for font vendors (e.g. direct sale of fonts or server-based models like Typekit), ways of making licensing more understandable and accessible by mere mortals, and how to make better use of the available features in fonts.

    Reply

  17. Pingback from web fonts and css features - a simple demonstration at hacks.mozilla.org on June 13th, 2009 at 9:25 pm:

    [...] button is rendered with its own font, declared using @font-face. Example: @font-face { font-family: Brock Script; src: url("BrockScript.ttf"); [...]

    Reply

  18. Chris Davies wrote on June 14th, 2009 at 10:34 am:

    It is nice to see this in Firefox and other browsers. What is disappointing is that no one seems to implement web fonts when printing. This seems a large feature gap that no one seems to be addressing.

    Reply

  19. Pingback from Take Your Design To The Next Level With CSS3 | CSS | Smashing Magazine on June 15th, 2009 at 2:22 am:

    [...] beautiful fonts with @font-face [...]

    Reply

  20. Pingback from New fonts, but do you see them? | Life on the edge of /dev/null on June 16th, 2009 at 5:56 pm:

    [...] font normally not installed on your computer. This is accomplished by using the @font-face CSS tag, described in detail over at hacks.mozilla.org. I’m now using the font GrauBlau Sans Web from the nice people over [...]

    Reply

  21. Nicolas Mailhot wrote on June 17th, 2009 at 8:17 am:

    @John Daggett

    1. « Most font families today consist of only four faces: »

    This is platform-dependant. The default font family under Linux is usually DejaVu Sans, and it has included more for a long time.

    Modern font faces allow variants along the weight (normal/bold/heavy…) width (normal/condensed/expanded) slant (normal/oblique/italic axis). Sadly Firefox still does not support the slant operator

    2. Your Helvetica Neue / MgOpenModerna pattern is a perfect example why @font-face will likely lead to more web breakage: the CSS is advertising Helvetica Neue, but downloading MgOpenModerna, so even if a recent up-to-date MgOpenModerna is available on system it will waste resources fetching a (likely obsolete) MgOpenModerna from the web.

    @James John Malcolm

    Making small caps a variant is contrary to WWS font naming specifications, please do not advocate it.

    Reply

  22. Nicolas Mailhot wrote on June 17th, 2009 at 8:20 am:

    « Sadly Firefox still does not support the slant operator »

    sorry I meant width here

    https://bugzilla.mozilla.org/show_bug.cgi?id=3512

    Reply

  23. James John Malcolm wrote on June 17th, 2009 at 11:36 am:

    @Nicolas

    Please don’t confuse the practices of the WWS font naming specification with practices CSS should adopt to make styling websites as easy for developers as possible. Adding “font-variant:small-caps;” to the list of declarations is the method CSS in use today to obtain text in Small Caps of the font in use. It would be beyond silly to use another method for @font-face (and not to mention increase the possibility for renderer bugs).

    And stop telling people what to advocate or not.

    Reply

  24. Kaida wrote on June 17th, 2009 at 11:57 pm:

    I’m running Firefox 3.5 Beta 4 on Fedora (Linux) and am not getting any of the fonts to show in your examples. They flicker briefly and then are replaced by boxes with numbers in them, like when I don’t have a Unicode font installed.

    Interestingly the fonts are supported in Midori (a webkit based browser).

    Reply

  25. Ombre wrote on June 18th, 2009 at 4:35 am:

    Great post.

    It seems that font-face doesn’t work wit the media print. With Safari this is OK.

    Reply

  26. Richard Fink wrote on June 18th, 2009 at 9:16 am:

    @John Daggett

    It occurred to me after your reply to my previous post that my ceaseless harping on issues regarding @font-face may have been bad form and a simple “Congrats, Great work!” would have sufficed.
    I left this comment for Robert Callahan:
    >@robert,
    >If you’re still monitoring this thread…
    >In retrospect I’m very glad font-linking was implemented in FF 3.5.
    >It’s clear to me now that the only way forward was to just do it >and get beyond talking.
    >In a year or two, we’ll all have a much better idea of whether >@font-face needs refinement based on results in the real world.
    >Thanks for your fine work. FF3.5 looks great.

    And then, I read David Baron’s thoughts and found a more sober, reflective thinking going on than (I think) I did last year in the rush of development.
    A more informed and constructive debate and analysis is going on among font-vendors, as well.

    Wishing you a smooth release of 3.5.

    Richard Fink

    Reply

  27. Pingback from 用CSS3将你的设计带入下个高度| CSS| 前端观察 on June 19th, 2009 at 11:34 pm:

    [...] beautiful fonts with @font-face [...]

    Reply

  28. John Daggett wrote on June 21st, 2009 at 5:54 pm:

    @Richard Fink

    Thanks!

    Reply

  29. Pingback from Mozilla goodness on June 21st, 2009 at 9:43 pm:

    [...] the technical side, this page also features 3.5’s new @font-face capabilities, serving up some slick comic booky text as real HTML text rather than a clunky graphic. The robot [...]

    Reply

  30. Pingback from Max Design - standards based web design, development and training » Some links for light reading (30/6/09) on June 29th, 2009 at 5:57 pm:

    [...] beautiful fonts with @font-face [...]

    Reply

  31. Pingback from Embedden Sie jetzt! | Code Candies on June 30th, 2009 at 12:46 am:

    [...] und nur wenn dieser nicht vorhanden ist, will man einen Download anbieten. Geht auch, wie man bei John Dagget nachlesen kann, mit der Eigenschaft [...]

    Reply

  32. Michael Montgomery wrote on June 30th, 2009 at 6:40 am:

    Thank you!!
    Congratulations, and great work.

    Reply

  33. Pingback from Firefox 3.5 y HTML5 on June 30th, 2009 at 11:30 am:

    [...] En cuanto a CSS también incorpora bastantes nuevas funcionalidades, como por ejemplo la posibilidad de integrar las fuentes – @font-face – y lograr así que la web se presente al usuario tal y como la concibió el diseñador sin tener que depender de las fuentes estandarizadas. Sin lugar a dudas lo agradecerán los diseñadores que veían capadas sus capacidades creativas. Ejemplo de uso de font-face. [...]

    Reply

  34. Pingback from 7 Reasons Why We Love Firefox 3.5 « Building Feedly on June 30th, 2009 at 12:15 pm:

    [...] Reason #6 – Web Fonts. Firefox 3.5 adds support for web fonts. This means that CSS files can now declare and download on demand new fonts. Fonts and typography have played an important role for printed newspaper and magazine and we see them play a very important role in the future of feedly (specially as we start adding support for skins). Learn more about web fonts and @font-face. [...]

    Reply

  35. Pingback from beautiful fonts with @font-face at hacks.mozilla.org « Netcrema - creme de la social news via digg + delicious + stumpleupon + reddit on June 30th, 2009 at 12:25 pm:

    [...] beautiful fonts with @font-face at hacks.mozilla.orghacks.mozilla.org [...]

    Reply

  36. Gérard Talbot wrote on June 30th, 2009 at 10:52 pm:

    @ John Daggett,

    Regarding
    font-family: Graublau Sans Web;
    and
    font-family: Graublau Sans Web, Lucida Grande, sans-serif;

    “Font names containing any such characters or white space should be quoted”
    CSS 2.1, section 15.3 Font family: the ‘font-family’ property
    http://www.w3.org/TR/CSS21/fonts.html#propdef-font-family

    regards, Gérard

    Reply

  37. marlwin wrote on July 1st, 2009 at 4:35 am:

    The only thing that I regret is that you can’t specify a size for each variant (listed in font:). So if the browser does not support @font-face, the user may end with a font bigger or smaller than wanted.

    But maybe there is a tip for that ?

    Reply

  38. John Daggett wrote on July 1st, 2009 at 7:35 pm:

    @Gérard Talbot

    Right, quotes are required when you use a font with a family name that contains quotes, semi-colon’s, etc., as listed in the section you reference. But *not* spaces.

    @marlwin

    Use font-size-adjust?

    http://www.w3.org/TR/css3-fonts/#relative-sizing-the-font-size-adjust-pro

    Reply

  39. Pingback from This page is an example with what you ca … | builder2 on July 2nd, 2009 at 10:18 am:

    [...] page is an example with what you can do with Firefox 3.5’s support of @font-face. Wonderful, isn’t it? [...]

    Reply

  40. Pingback from Anonymous on July 3rd, 2009 at 6:55 am:

    [...] [...]

    Reply

  41. Pingback from Firefox 3.5 and the potential of Web typography | Design Website Blog on July 3rd, 2009 at 11:03 am:

    [...] Mozilla’s John Daggett explains: Within a stylesheet, each @font-face rule defines a family name to be used, the font resource to be loaded, and the style characteristics of a given face such as whether it’s bold or italic. Firefox 3.5 only downloads the fonts as needed, so a stylesheet can list a whole set of fonts of which only a select few will actually be used. [...]

    Reply

  42. Pingback from Links for 2009-07-01 [del.icio.us] on July 3rd, 2009 at 1:10 pm:

    [...] beautiful fonts with @font-face at hacks.mozilla.org [...]

    Reply

  43. Mr. Fussyfont wrote on July 3rd, 2009 at 1:27 pm:

    John Daggett,

    Thanks, this is very educational. I was just reading the W3C document and came across this:

    “The font-size-adjust property is a way to preserve the readability of text when font fallback occurs. It does this by adjusting the font-size so that the x-height is the same irregardless of the font used.”

    I don’t know if you wrote this, but “irregardless” is not a word. It’s “regardless”.

    While I’m at it, James John Malcolm, it’s “sepArate” not “sepErate” and the word “which” should be replaced with “that” in this sentence:

    “Exactly, it’s extremely handy for fonts which have a seperate small-caps version”

    Sorry to be so anal, but if even one person’s grammar or spelling improves as a result of this comment, it will have been worth it!

    Reply

  44. Pingback from Firefox 3.5 and the potential of Web typography | Programming Blog on July 3rd, 2009 at 4:49 pm:

    [...] Mozilla’s John Daggett explains: Within a stylesheet, each @font-face rule defines a family name to be used, the font resource to be loaded, and the style characteristics of a given face such as whether it’s bold or italic. Firefox 3.5 only downloads the fonts as needed, so a stylesheet can list a whole set of fonts of which only a select few will actually be used. [...]

    Reply

  45. Pingback from Firefox headed toward fancy e-book capabilities? | TeleRead: Bring the E-Books Home on July 4th, 2009 at 6:42 am:

    [...] detail: “Mozilla’s John Daggett explains: Within a stylesheet, each @font-face rule defines a family name to be used, the font [...]

    Reply

  46. Koolwriting wrote on July 4th, 2009 at 8:09 am:

    Can we use “@font-face” inline? For example, if you just want one crazy symbol out of wingdings.

    Reply

  47. Pingback from Noticias Edición Digital » Blog Archive » Firefox headed toward fancy e-book capabilities? on July 4th, 2009 at 8:15 am:

    [...] detail: “Mozilla’s John Daggett explains: Within a stylesheet, each @font-face rule defines a family name to be used, the font [...]

    Reply

  48. Steve wrote on July 4th, 2009 at 8:50 pm:

    Now if we can only get IE to drop EOT in favor of TTF/OTF, we can actually implement this for all users!

    And keep the free, embeddable fonts coming!!

    Reply

  49. Pingback from Firefox 3.5 and the potential of Web typography | Mac Bargains on July 4th, 2009 at 9:59 pm:

    [...] Mozilla’s John Daggett explains: Within a stylesheet, each @font-face rule defines a family name to be used, the font resource to be loaded, and the style characteristics of a given face such as whether it’s bold or italic. Firefox 3.5 only downloads the fonts as needed, so a stylesheet can list a whole set of fonts of which only a select few will actually be used. [...]

    Reply

  50. Jens Wedin wrote on July 6th, 2009 at 12:10 am:

    Does anyone have a clue how to convert a OTF file into a EOT file?

    Reply

1 2 3 4

Add your comment

  1.