当包含哈希时,Chrome不会为字体渲染svg

时间:2013-06-19 18:42:17

标签: css google-chrome fonts svg font-face

Chrome比TTF更好地呈现SVG字体,所以我想强制它使用SVG文件。但是当我在声明中仅包含SVG时,Chrome无法找到/应用该字体。如果我删除哈希符号, 应用它(可能是在svg中找到的第一件事)!我做错了什么?

文件结构

/
/fonts
/styles

styles.css的

@font-face {
    font-family: "TeXGyreHerosCnBoldItalic";
    src: url( "../fonts/texgyreheroscn-bolditalic-webfont.svg#TeXGyreHerosCnBoldItalic" ) format("svg" );
    font-weight: normal;
    font-style: normal;

}

HTML

<div style="font-family: 'TeXGyreHerosCnBold';">Some text</div>

如果我改为这样做,那就有效:

src: url( "../fonts/texgyreheroscn-bolditalic-webfont.svg" ) format("svg" );

1 个答案:

答案 0 :(得分:1)

正如@cinnamon所建议的那样,似乎Chrome团队决定你不应该遍历SVG:https://code.google.com/p/chromium/issues/detail?id=128055#c6

@Cinnamon在这里有更多信息:https://stackoverflow.com/a/16042903/857025