Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html CSS';s@font-face local()赢得';t查找除“1”以外的其他字体样式;正规的;及;黑体字;_Html_Css_Fonts_Font Face_Local - Fatal编程技术网

Html CSS';s@font-face local()赢得';t查找除“1”以外的其他字体样式;正规的;及;黑体字;

Html CSS';s@font-face local()赢得';t查找除“1”以外的其他字体样式;正规的;及;黑体字;,html,css,fonts,font-face,local,Html,Css,Fonts,Font Face,Local,所以。。。我在我的PC(linux ubuntu)上安装了一些字体(Roboto),我想在CSS中使用@font-face,但是当我在src:>中定义这些local()时像这样,例如-> @font-face { font-family: 'Roboto'; src: local('Roboto'), local('Roboto-Regular'), url('Roboto.ttf') format('truetype'); font-weight: 400; } 问题: 只有使

所以。。。我在我的PC(linux ubuntu)上安装了一些字体(Roboto),我想在CSS中使用
@font-face
,但是当我在
src:>中定义这些
local()
像这样,例如->

@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
粗体),但当我将其更改为
font-weight:500
中等)或任何其他字体时,它只是不会更改

我试图解决问题的事情: 1)定义另一个
@font-face

@font-face {
  font-family: 'Roboto';
  src: local('Roboto Medium'), local('Roboto-Medium'), url('Roboto-Medium.ttf') format('truetype');
  font-weight: 500;
}
结果:控制台错误:
无法解码下载的字体:pathToMySite/css/Roboto Medium.ttf
并且它保持不变(常规)

2)我尝试列出所有字体,以查看这些字体是否已实际安装(使用linux命令:
fc list | grep“Roboto”
,它只输出所有本地安装的字体(其中包含“Roboto”)

输出

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
(到不同文件夹的路径甚至更多,但文件名始终相同)

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

所有的机器人变体(薄、轻、规则、中等、粗体、黑色)都有明显不同(如果中等和规则看起来相同)

4)是的,我使用
CTRL+F5
刷新了它,是的,我禁用了
缓存

长话短说:所有字体都安装在系统上,但是CSS除了常规字体粗体字体重量之外,什么都看不到,或者找不到它们?或者我不知道为什么


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

不要使用本地,只使用url,因为:

@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:


Protip:如果你真的很在意你的字体,以至于使用了
@font-face
规则,那么不要使用
local
。你想要控制字体,所以不要说“或者,不管你安装了什么,碰巧有相同的名字,我不在乎”。您需要注意:强制执行与错误相同的字体=)。获取Roboto的.woff源代码,然后使用它,并且只使用它。
.my_div{
   font-family: Light;
}