我在用一个工具自动生成CSS,它生成下面的@font-face标签和对应的段落Style
@font-face {
font-family:FF-Garamond-Italic;
src:url("../fonts/16309_GARAIT (1).ttf");
font-style:italic;
}
p.autoParaStyle3 {
font-family:FF-Garamond-Italic;
font-size:32px;
line-height:40px;
color:#000;
text-align:justify;
}
注意,指定的字体已经是Garamond字体的斜体版本,从技术上来说,< code>font-style:italic行是多余的。
然而,这并不奏效(我在FF、Chrome
所以,我有2个问题
>
为什么这不起作用,也就是说,为什么使用font-style:italic
会导致它不起作用?
有没有办法通过javascript“覆盖”@font face定义来使用font-style:normal
我询问的原因是,我无法控制上面生成CSS的工具,因此无法访问该文件
此外,我尝试用javascript创建一个同名的新@font face,但我不想在索引中再次指定“src”。html,因为这个文件和css文件被进一步操作到不同的位置,所以我希望“src”只与css文件相关,并从中选取。
提前感谢!
对于使用Create React App的用户,font-face
可能会根据入口点给出不同的结果。这就是我注意到的:
@font-face {
font-family: "FontName"; <---
font-style: normal; <---
font-weight: normal;
src: url("path-to-assets/fonts/FontName.ttf") format("truetype");
}
@font-face {
font-family: "FontName"; <---
font-style: italic; <---
font-weight: normal;
src: url("path-to-assets/fonts/FontName-Italic.ttf") format("truetype");
}
/* Usage */
.text {
font-family: FontName;
font-style: normal;
}
.text-italic {
font-family: FontName;
font-style: italic;
}
@font-face {
font-family: "FontName"; <---
font-style: normal; <---
font-weight: normal; /* normal | 300 | 400 | 600 | bold | etc */
src: url("path-to-assets/fonts/FontName.ttf") format("truetype");
}
@font-face {
font-family: "FontNameItalic";
font-style: normal; <----
font-weight: normal; /* normal | 300 | 400 | 600 | bold | etc */
src: url("path-to-assets/fonts/FontName-Italic.ttf") format("truetype");
}
/* Usage */
.text {
font-family: FontName;
}
.text-italic {
font-family: FontNameItalic;
}
设置font-style:italic
不是多余的。它指定字体为斜体,这意味着当元素的字体设置为斜体时,它将被视为匹配,默认情况下,例如对于i
和引用
elements。
因此,问题1的答案是p
元素默认为其声明了常规(普通)字体,因此将使用常规字体(此处为浏览器的默认字体)。
要解决此问题,请将font-style:italic
添加到p.autoParaStyle3
>的规则中。
问题2的答案是,这取决于@font-face
规则在DOM中的位置。例如,如果它位于style
元素中,则可以使用JavaScript修改该元素的内容。然而,你不应该问这个问题。
(用斜体字显示整个段落在印刷上是有问题的。你可能解决了错误的问题。)
在通过WebView显示的超文本标记语言文件中使用Google字体,如果字体样式设置为斜体字,字体不会呈现斜体。 字体权重也是如此。将其设置为粗体,文本呈现正常。 这似乎只适用于这些自定义字体,“系统”字体(如Arial)在设置时呈现粗体和斜体。 我已经使用ADB从设备中提取文件并在本地运行,在Chrome中,它们显示正确,粗体和斜体。
问题内容: 是否可以在页面加载之前预加载或以其他方式缓存@ font-face字体(最有可能使用javascript),以便在页面最终加载时不会出现难看的跳转? 问题答案: 我目前尚无任何避免字体加载时出现闪烁的技术,但是您可以通过为字体发送适当的缓存头并确保该请求尽快通过来最大程度地减少闪烁。
@font-face跟其在CSS中作用表现一样,在后面简单地添加个块状属性即可,类似下面: @font-face font-family Geo font-style normal src url(fonts/geo_sans_light/GensansLight.ttf) .ingeo font-family Geo 生成为: @font-face { font-famil
问题内容: 我正在尝试使用CSS文件加载字体,但是字体从未加载。这是我的目录结构。 然后在我有加载程序来获取字体。 在我的CSS文件中,我有以下内容: 最后,我使用以下命令调用我的CSS文件: 一切正常,但字体永远不会加载。 问题答案: 在尝试了很多东西之后,下一个装载机完成了工作。我使用url-loader代替了文件加载器。您需要安装url-loader。
我正在尝试在itext 5中使用TextField。我的字体名是“微軟正黑體英文是“Microsoft JhengHei”。我想用粗体和黑色的字体。 初始化字体(3是字体。BOLD|字体。ITALIC和BC是我的基本颜色) 我有一个文本字段变量,并将fontZh设置为setFont。 pdf结果只有字体样式、大小和颜色是正确的。但这种大胆和不自然是行不通的。
我试着为我的网站设置一个自定义字体,但它在火狐,Chrome或Edge/IE上都不起作用。Firefox开发者工具中的网络部分说没有找到字体,并列出了404,尽管URL应该是正确的。这是我的代码: null