I have a single page static site where I have configured the appcache to cache all resources needed to load the page for future use, in order to minimize server requests and make the page available offline.
I have run into a problem with font support. I use web fonts with @font-face and woff, ttf, svg, and eot formats to ensure compatibility with all browsers. The issue is that I have to include multiple fonts in the cache manifest in order to ensure cross-browser compatability. While normally a browser would just read the @font-face ,select the appropriate font format, and download only that format (or none at all if it's available locally), I could not find a way to accomplish that with appcache while ensuring that everything is available cached and offline. My solution was just to include all of the font formats in the cache manifest. While this worked, it was extremely wasteful, because clients downloaded fonts they didn't need.
Eventually I did some research on browser support, comparing appcache, ttf, woff, eot, and svg fonts. I came to the conclusion that all browsers that support appcache work with either woff or ttf, and that svg and eot have very little support. (The limiting factors are that android has no woff support and IE has no ttf support). Using this, fonts still displayed correctly everywhere. However, it's still really inefficient, as two fonts are downloaded regardless of need.
So, in summary, what is the recommended way to deal with fonts and appcache most efficiently?