html - 重新加载时文本从自定义字体恢复为网络安全字体(覆盖缓存)

标签 html css fonts

我将字体更改为 Arial,但将标题字体设置为自定义字体。我将我的字体放在一个名为 MYFONT 的文件夹中,该文件夹位于一个名为 fonts 的文件夹中,该文件夹位于我的根目录中。 (根目录 -> 字体 -> MYFONT -> 字体文件)这是我的代码:

CSS
body {
    font-family: 'Arial', sans-serif;
}

@font-face {
    font-family: 'MYFONT';
    font-style: normal;
    font-weight: 600;
    font-display: optional;
    src: url(fonts/MYFONT/MYFONT.woff2) format('woff2'),
         url(fonts/MYFONT/MYFONT.woff) format('woff'),
         url(fonts/MYFONT/MYFONT.svg) format('svg'),
         url(fonts/MYFONT/MYFONT.eot) format('eot');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


h1, h2, h3 {
    font-family: 'MYFONT', sans-serif;
}
HTML
<h1>MYFONT</h1>
<h2>MYFONT</h2>
<h3>MYFONT</h4>
<p>ARIAL</p>

当我第一次在新设备上打开页面时,或者当我按 Cmd + Shift + R(没有浏览器缓存的情况下重新加载页面)时,整个页面都是 Arial。可能是什么问题呢?我想要 <h1>, <h2>, and <h3>使用 MYFONT 字体。

**编辑: 我尝试删除

中的“sans-serif”部分
h1, h2, h3 {
    font-family: 'MYFONT', sans-serif;
}

并且在第一次加载/加载时没有缓存,字体变成了默认的衬线字体。**

最佳答案

如果您指定一个 @font-face 规则以特定的权重,那么您的字体将只会在 该权重 时生效。因此,要么从字体声明中删除 font-weigth: 600,要么将 font-weigth: 600 添加到 h1,h2,h3 规则中. @font-face 用于为特定的系列/样式/粗细组合加载特定的字体资源,字体声明越具体,您的常规 CSS 就必须越具体才能用于字体- 面子规则也适用。

关于html - 重新加载时文本从自定义字体恢复为网络安全字体(覆盖缓存),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55573509/

相关文章:

javascript - 如何编辑一篇博文的 CSS 而不是其他博文以获得 5 星评级系统?

php - 使用 HTML <a href...> 访问表单输入

html - Glyphicons 在 Firefox 中没有正确对齐

html - Nodejs : Served html page not linked to css

java - 向 JFrame 上图形中的字符串添加下标和字体

css - 通过字体(本地托管)使用的图标不会在 Firefox 中显示

html - 模糊点击导航链接和网络可访问性

html - Bootstrap margin - 断行

javascript - css @font-face 规则不一致

html - 有没有一种更有效的方法可以将图像居中放置在 float 的 div 中