图标字体 - icomoon - @ font-face在不同服务器上时不显示

时间:2013-01-23 11:22:33

标签: css3 fonts icons font-face glyph

当我第一次下载他们在所有浏览器中使用的图标时。然而现在它的实时和字体存在于不同的服务器上,它在IE或Firefox中不起作用,但在Chrome和Opera中很好。任何想法?我已经检查了代码并确保所有字体都在服务器上。

@font-face {
font-family: 'icomoon';
src:url('http://static.mydomain.com/design_media/fonts/icomoon.eot');
src:url('http://static.mydomain.com/design_media/fonts/icomoon.eot?#iefix') format('embedded-opentype'),
    url('http://static.mydomain.com/design_media/fonts/icomoon.svg#icomoon') format('svg'),
    url('http://static.mydomain.com/design_media/fonts/icomoon.woff') format('woff'),
    url('http://static.mydomain.com/design_media/fonts/icomoon.ttf') format('truetype');    
font-weight: normal;
font-style: normal;
}

1 个答案:

答案 0 :(得分:1)

对于JS文件等字体,有一些XSS限制。

为避免这些限制,您必须将服务器配置为允许跨域字体文件。

在Apache中,您必须安装Header模块并将其添加到conf:

   <FilesMatch "\.(ttf|ttc|otf|eot|woff)$">
       <IfModule mod_headers.c>
       Header set Access-Control-Allow-Origin "*"
       </IfModule>
   </FilesMatch>

编辑:Access-Control-Allow-Origin之后的“*”参数可能仅限于特定域。

有关详细信息,请参阅http://www.w3.org/TR/cors/