【发布时间】:2013-06-16 10:33:33
【问题描述】:
Chrome 渲染 SVG 字体比 TTF 更好,所以我想强制它使用 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" );
【问题讨论】:
-
@cimmanon 谢谢,看起来是一样的。你能解释为什么这是一个安全风险吗?我看不出加载 SVG 与仅加载
#name定义的部分是一种安全风险。 -
是的,我不太确定为什么这是一个安全问题,并且链接的错误报告没有详细说明。谷歌在这里也不是很有帮助。我只能猜测它与访问类似这样的浏览历史记录有关:456bereastreet.com/archive/201112/…
-
@cimmanon 您能否将您的评论作为答案发布,以便我可以将此问题标记为已回答?谢谢。
标签: css google-chrome fonts svg font-face