访问不同目录中的字体

时间:2012-05-19 22:17:51

标签: css

我的代码位于我网站根目录中标有“fonts.css”的CSS文件中:

@font-face
{
    src:url(Fonts/Champagne%20&%20Limousines.ttf);
    font-family:'Champagne';
}

@font-face
{
    src:url(Fonts/Cicle%20Fina.ttf);
    font-family:'Ciclef';
}

我的所有字体都在我的根目录(“RootDirectory / Fonts”)中标有“Fonts”的文件夹中。当我尝试使用位于根目录中的HTML / CSS页面访问它们时,字体工作正常。但是,当我尝试从不在根目录中的页面(它是“RootDirectory / About”)访问它们时,字体不起作用。我有一些页面的HTML不能像这样工作(链接到“fonts.css”文件):

<link rel="stylesheet" href="../fonts.css" />

它应该正常工作,对吗?它不能是一个拼写错误,因为我直接从第一页上复制了新的HTML和CSS,而这些字体的工作正在发挥作用。

P.S。这是唯一没有在新页面中工作的东西,图像和其他一切工作正常。

2 个答案:

答案 0 :(得分:0)

除非您知道自己在做什么,否则应该通过从文档根目录指定其整个路径来根本地URL。这是通过在网址前加斜杠来完成的。

所以..

src:url(Fonts/Champagne%20&%20Limousines.ttf); /*and*/
src:url(Fonts/Cicle%20Fina.ttf);

...成为

src:url(/Fonts/Champagne%20&%20Limousines.ttf); /*and*/
src:url(/Fonts/Cicle%20Fina.ttf);

和...

<link rel="stylesheet" href="../fonts.css" />

...变为

<link rel="stylesheet" href="/fonts.css" />

前导斜杠表示它相对于网站的doc根。这也意味着它可以在您的网站上运行。这样可以更轻松地重用和重新组织代码。

答案 1 :(得分:0)

请尝试取消路径中的空格并删除%20。同时取下&符号&amp ;.结果是什么?