views:

41

answers:

3

It would be easier for development if I can just embed every typeface I'm likely to use, but I definitely don't want the extra HTTP requests for fonts that don't end up anywhere in the page. Can anyone enlighten me?

+2  A: 

Unfortunately, most browsers won't second guess you to avoid downloading fonts that aren't actually used (actually I don't know of any browser who is smart enough for such avoidance, which of course doesn't mean some such browsers might not exist). Couldn't you post-process the pages during deployment to remove the unused ones?

Alex Martelli
That's a great suggestion. Unfortunately, its at least as much work as just figuring out which fonts I'm actually going to use and sticking to them, as it is a reasonable number in my case. Thanks for the answer
Logan Koester
+2  A: 

IE will download the .eot file immediately when it encounters the @font-face declaration.

Gecko, Webkit, and Opera all wait until they encounter HTML that matches a CSS rule with a fontstack including the @font-face font.

-- http://paulirish.com/2009/fighting-the-font-face-fout/

So were it not for IE, it actually would be safe to embed lots of fonts, as long as you're careful not to refer to unused ones in your CSS styles, because at that point they will be downloaded by the browser.

Logan Koester
A: 

Paul Irish has a really good tutorial on using @font-face

http://paulirish.com/2009/bulletproof-font-face-implementation-syntax/

You can also use a syntax generator on fontsquirrel.com

marmite