如何使用Modernizr检测Webfont支持并推送Cufon,如果它没有?我基本上使用90%的Google Web Font软件包,另外10%是FontSquirrel的软件包。
我希望依赖Webfonts,如果支持,因为这些单词是可索引的和SEO友好的,但如果不支持那些,我仍然想要渲染Cufon做得很好的正确字体。
答案 0 :(得分:1)
基本上每个浏览器都有@ font-face支持:http://caniuse.com/#search=font
所以你真的不需要一个cufon后备。
那说......是的:
if (!Modernizr.fontface) Cufon.now();
但实际上,你根本不需要使用Cufon。
答案 1 :(得分:1)
Paul说得对,即使IE7和IE8支持webfonts(它们支持.EOT webfonts),并且它们确实支持它是一个普遍的事实,我只是不知道为什么它不适合我。< / p>
结果证明CSS文件中的路径渲染存在问题。我使用SquishIt ASP.NET MVC插件来最小化和捆绑CSS文件。
当我在SquishIt包中包含FontSquirrel包中的stylesheet.css文件时,对.eot字体的支持在浏览器IE7和IE8中不起作用。在仔细测试了这个错误之后,我发现如果文件单独包含(不在SquishIt包中),两个提到的浏览器都会支持.eot webfonts,但是当包含在CSS中时,将无法立即显示正确的字体。
显然Squish会重写文件的路径,重写(或编码)“?iefix”字符串,从而使旧的IE无法识别正确的.eot文件,并且无法正确呈现字体。