CSS的@ font-face local()无法找到“常规”和“粗体”之外的其他字体样式

时间:2019-04-01 19:13:59

标签: html css fonts font-face local

所以...我在PC(linux ubuntu)上安装了一些字体(Roboto),我想使用@font-face在CSS中使用它们,但是当我在{内定义了local()时{1}}例如这样。 ->

src: ;

问题:

仅有效的字体样式/粗细为-@font-face { font-family: 'Roboto'; src: local('Roboto'), local('Roboto-Regular'), url('Roboto.ttf') format('truetype'); font-weight: 400; } 常规)和font-weight: 400粗体),但是当我将其更改为font-weight: 600)或其他任何值,它不变!

我尝试解决的问题:

1)定义另一个font-weight: 500

@font-face

结果:控制台错误:@font-face { font-family: 'Roboto'; src: local('Roboto Medium'), local('Roboto-Medium'), url('Roboto-Medium.ttf') format('truetype'); font-weight: 500; } ,它保持不变(常规

2)我试图列出所有字体,以查看这些字体是否已实际安装(使用linux命令:Failed to decode downloaded font: pathToMySite/css/Roboto-Medium.ttf,该命令仅输出所有本地安装的字体(具有“ Roboto”在其中)

输出

fc-list | grep "Roboto"

(到不同文件夹的路径甚至更多,但是文件名始终相同)

3)我试图转到linux“字体”应用程序,以查看这些字体是否已实际安装。

所有Roboto版本(稀薄,浅色,常规,中等,粗体,黑色)在那里明显不同(以防 medium regular 看起来一样)

4)是的,我使用lots/of/paths/Roboto-Regular.ttf: Roboto:style=Regular lots/of/paths/Roboto-Italic.ttf: Roboto:style=Italic lots/of/paths/Roboto-Medium.ttf: Roboto Medium:style=Regular lots/of/paths/Roboto-MediumItalic.ttf: Roboto Medium:style=Italic lots/of/paths/Roboto-Bold.ttf: Roboto:style=Bold lots/of/paths/Roboto-BoldItalic.ttf: Roboto:style=Bold Italic lots/of/paths/Roboto-Light.ttf: Roboto Light:style=Regular lots/of/paths/Roboto-LightItalic.ttf: Roboto Light:style=Italic lots/of/paths/Roboto-Thin.ttf: Roboto Thin:style=Regular lots/of/paths/Roboto-ThinItalic.ttf: Roboto Thin:style=Italic 刷新了,是的,我禁用了CTRL + F5

长话短说::所有字体均已安装在系统上,但CSS除了 regular bold 粗细以外,什么都没有还是找不到他们?还是我不知道为什么。

您能帮我解决这个问题吗?谢谢您的帮助!

1 个答案:

答案 0 :(得分:0)

请勿仅使用本地网址,例如:

@font-face {font-family: 'Regular'; src: url('fonts/Roboto-Regular.ttf'); }
@font-face {font-family: 'Light'; src: url('fonts/Roboto-Light.ttf'); }
@font-face {font-family: 'Medium'; src: url('fonts/Roboto-Medium.ttf'); }
@font-face {font-family: 'Bold'; src: url('fonts/Roboto-Bold.ttf'); }

CSS:

.my_div{
   font-family: Light;
}