0

我在网站根目录中标记为“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。

PS这是唯一在新页面中不起作用的东西,图像和其他一切都运行良好。

4

2 回答 2

0

除非您知道自己在做什么,否则您应该通过从文档根目录指定它们的整个路径来根植本地 url。这是通过在 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" />

前导斜杠表示它相对于网站的文档根目录。这也意味着它将在您的网站上运行。这使得重用和重组代码变得更加容易。

于 2012-05-19T22:20:47.093 回答
0

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

于 2015-07-16T10:30:38.583 回答