【发布时间】:2020-07-20 17:24:50
【问题描述】:
我在我的服务器中托管字体,可以像 - https://cdn.mywebsite/fonts/font-name 一样访问它
现在我有一个 css 文件(在与 index.html 相同的文件夹中),我正在使用 @font-face 导入这些文件,如下所示:
font-family: 'fontname';
src:url('https://cdn.mywebsite.com/fonts/font-name.woff2') format('woff2'),
url('https://cdn.mywebsite.com/fonts/font-name.woff') format('woff');
font-weight: 300;
font-style: normal;
}
@font-face {
font-family: 'fontname';
src:url('https://cdn.mywebsite.com/fonts/font-name-light.woff2') format('woff2'),
url('https://cdn.mywebsite.com/fonts/font-name-light.woff') format('woff');
font-weight: 300;
font-style: italic;
}
...... and a few more
我尝试使用 2 种方法在我的 index.html 中导入此文件,均在网络选项卡中返回 404 错误。
1.
<style type='text/css'>
@import url('fonts.css');
</style>
-
<link rel="stylesheet" type="text/css" href="fonts.css"/>在 #2 中,我尝试使用src/..../fonts.css和./fonts.css和/fonts.css(对于 #1 也有类似的尝试)
我不确定发生了什么以及为什么它不起作用。
现在的工作是直接在组件中添加 css,如下所示:
<style type="text/css">
@font-face {
font-family: 'fontname';
src:url('https://cdn.mywebsite.com/fonts/font-name.woff2') format('woff2'),
url('https://cdn.mywebsite.com/fonts/font-name.woff') format('woff');
font-weight: 300;
font-style: normal;
}
@font-face {
font-family: 'fontname';
src:url('https://cdn.mywebsite.com/fonts/font-name-light.woff2') format('woff2'),
url('https://cdn.mywebsite.com/fonts/font-name-light.woff') format('woff');
font-weight: 300;
font-style: italic;
}
</style>
我正在使用 node express 和 react(但我认为这不重要)。
非常感谢任何帮助。
【问题讨论】:
-
字体在服务器目录结构中的什么位置?
https://cdn/mywebsite/fonts不是有效的 URL。cdn是该 URL 中的主机名。您将需要http://mysitedomain.com/fonts之类的东西,其中fonts是您的公共目录下用于提供静态文件的目录。 -
抱歉,我会更正我的链接,它是
https://cdn/mywebsite.com/fonts字体在src/main/fonts中与src/main/index.html相同
标签: css font-face self-hosting