我已经开始学习使用django,并开始在Digital Ocean的App平台上托管django。我在Digital Ocean的Spaces上托管我的静态文件。我的CSS文件加载得很好。但我的字体却不行。
我的文件结构如下:
Project
--Static
---CSS
-CSS files
---Fonts
- font files
我在CSS文件中设置了我的@font-face,如下所示:
@font-face {
font-family: 'poppins';
src: url('../static/fonts/Poppins-Light.woff2') format('woff2');
}
并应用字体,如下所示:
.div-name{
height: 100px;
font-family: 'poppins';
font-size: 40px;
}
就像我说的,我的CSS加载得很好,字体只是没有显示出来。我错过了什么?谢谢你的帮助。
1条答案
按热度按时间toe950271#
url('../static
表示从文件向上移动一个文件夹,然后进入/static,因此从 inside /css向上移动到 inside /static,然后向下移动到/static然而,在 * static中没有/static文件夹 *,您计算错了文件夹级别。
要解决这个问题,您可以使用绝对url
url('/static/...
或使相对url正确工作url(../fonts
**绝对网址:**如果
url('/
以斜杠开头,则意味着它从网站的根目录开始向下运行。您可以在浏览器中键入绝对网址来测试绝对网址,例如转到http://127.0.01:8000/static/fonts/Poppins-Light.woff2,看看它是否下载该文件**相对url:**表示它从文件开始并相对于它移动。您的示例从/css中的.css文件开始,然后通过
../
向上到/static文件夹。/static中有/CSS和/Fonts文件夹,因此完整的url是url('../Fonts/Poppins-Light.woff2')
。您不需要提及/static,因为您一直都在它内部。如果您使用url('../../
,例如,up two levels,则您需要提及/static。