输出中未显示自定义字体



我有一个问题。我想使用自定义字体,得到了.woff,.woff2,.eot,.ttf,.svg等等。所有这些文件都位于名为"fonts"的文件夹中。

我尝试通过@font脸访问它们,但网站上没有显示字体。所以我在一个空白页面上尝试了它,这样就不会有引导 css 或其他任何东西干扰,但问题仍然没有解决。

这是我的 CSS

@font-face {
font-family: 'Bauhaus93'
src: 
url('/fonts/BAUHS93.woff') 
format('woff'), 
url('/fonts/BAUHS93.woff2') 
format('truetype');
} 

这是我的 html,我还在其中放入了 Google 网络字体以检查托管字体是否也会被忽略。

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="stylesheet" href="/css/style.css" type="text/css">
<link href='https://fonts.googleapis.com/css?family=Montserrat'   rel='stylesheet'>
<title>Hello, world!</title>
</head>
<body>
<h1>Hello, world!</h1>
<p style="font-family: 'Montserrat'">TEST text test </p>
<p style="font-family: 'Bauhaus93'">TEST text test </p>
</body>
</html> 

如果您的字体位于同一子文件夹中,请删除url()开头的/

如果您的字体文件夹不在子文件夹中,则需要../,而不仅仅是/url()的前面。每个../向后移动 1 个文件夹,以便您可以通过这种方式找到字体文件夹。

例如:

url('../fonts/BAUHS93.woff') format('truetype');

问题是你在那里使用了错误的语法。您应该删除正斜杠。 当您的字体位于当前 Web 根目录的 fonts 文件夹中时,将使用/

好的,我没有看到您在评论中提供的文件路径。我会编辑我的答案。文件路径: 文件夹/字体/BAUHS93.woff;Folder/test.html;文件夹/css/样式.css;

这个语法是错误的——

url('/fonts/BAUHS93.woff')

改成这样——

url('../fonts/BAUHS93.woff')

当文件位于距当前文件夹上一级的文件夹中时,应使用此选项

或者,您可以链接HTML中的字体-

<link href="fonts/BAUHS93.woff" rel="stylesheet">

只需在 CSS 中使用font-family: 'Bauhaus93';

但是你说即使这样也行不通。如果没有,您应该检查名称和路径,或者您可以尝试链接 Web 字体。您的文件可能存在一些错误,或者您可能使用的名称与字体文件中定义的名称不同。

我还看到您在HTML文件中链接了蒙特塞拉特,并且该字体应该可以工作。如果即使网络字体也没有,您应该尝试在样式标签中添加分号-style="font-family: 'Montserrat';",即使它不应该有什么区别,因为 css 通常会忽略分号的缺失。

最新更新