@font-face { font-family: 'MyFontFamily'; src: url('myfont-webfont.eot?#iefix') format('embedded-opentype'),url('myfont-webfont.woff') format('woff'),url('myfont-webfont.ttf') format('truetype'),url('myfont-webfont.svg#svgFontName') format('svg'); }
为什么“url(‘myfont-webfont.eot?#iefix’)”行末尾有“#iefix”?
解决方法
根据Fontspring(直接来源):
Internet Explorer <9 has a bug in the parser for the src attribute. If you include more than one font format in the src,IE fails to load it and reports a 404 error. The reason is that IE attempts to load as a file everything between the opening parenthesis all the way to the very last closing parenthesis. To deal with that wrong behavior,you merely declare the EOT first and append a single question mark. The question mark fools IE into thinking the rest of the string is a query string and loads just the EOT file. The other browsers follow the spec and select the format they need based on the src cascade and the format hint.
所以必要的部分是?;我认为#iefix只是程序员的语义行,不会被浏览器以任何特定的方式解释。
如果您愿意,可以在此处获取更多信息:https://github.com/stubbornella/csslint/wiki/Bulletproof-font-face。