我有一个Django应用<my-app>
,我想把一些本地字体文件加载到基本模板<my-app>/templates/<my-app>/base.html
中。
例如,在<my-app>/static/<my-app>/fonts/Lato/
下,我有几个.ttf
文件:
- Lato-Black.ttf
- Lato-BlackItalic.ttf
- Lato-Bold.ttf
- 等等
在<my-app>/static/<my-app>/css/fonts.css
中我有:
@font-face {
font-family: Lato;
font-style: normal;
font-weight: 300;
src:
local('Lato-Black') url('../fonts/Lato/Lato-Black.ttf') format('truetype'),
local('Lato-BlackItalic') url('../fonts/Lato/Lato-BlackItalic.ttf') format('truetype'),
local('Lato-Bold') url('../fonts/Lato/Lato-Bold.ttf') format('truetype'),
local('Lato-BoldItalic') url('../fonts/Lato/Lato-BoldItalic.ttf') format('truetype'),
local('Lato-Hairline') url('../fonts/Lato/Lato-Hairline.ttf') format('truetype'),
local('Lato-HairlineItalic') url('../fonts/Lato/Lato-HairlineItalic.ttf') format('truetype'),
local('Lato-Italic') url('../fonts/Lato/Lato-Italic.ttf') format('truetype'),
local('Lato-Light') url('../fonts/Lato/Lato-Light.ttf') format('truetype'),
local('Lato-LightItalic') url('../fonts/Lato/Lato-LightItalic.ttf') format('truetype'),
local('Lato-Regular') url('../fonts/Lato/Lato-Regular.ttf') format('truetype')
;
}
因此在base.html
中:
{% load static %}
<link rel="stylesheet" type="text/css" href="{% static '<my-app>/css/fonts.css' %}" />
这不会加载字体,因此我可以像使用Google的api一样使用它们:
<link href="https://fonts.googleapis.com/css?family=Lato" rel="stylesheet">
那么,我如何修复我的CSS?
1条答案
按热度按时间67up9zun1#
我知道现在回复已经太迟了,但由于没有人回答这个问题,而且这个问题出现在搜索中,我们需要回答这个问题,以免被其他用户询问。
因此,要解决这个问题,把所有这些字体文件在静态文件夹,并将它们导入css文件,如下所示: