当前位置:首页 > 行业动态 > 正文

html中加载字体

在HTML中加载字体可通过CSS的@font-face或链接外部字体库实现,需指定字体名称、来源及格式,确保跨浏览器兼容

使用 @font-face 加载自定义字体

@font-face 是 CSS 提供的规则,允许将本地字体文件定义为可使用的网络字体,需配合 CSS 规则声明字体名称和样式。

步骤说明

  1. 准备字体文件(如 .ttf.woff.woff2 格式)
  2. 在 CSS 中定义 @font-face 规则:
    @font-face {
      font-family: 'CustomFont'; / 自定义字体名称 /
      src: url('fonts/CustomFont.woff2') format('woff2'),
           url('fonts/CustomFont.woff') format('woff');
      font-weight: normal;
      font-style: normal;
    }
  3. 在元素样式中调用:
    body {
      font-family: 'CustomFont', sans-serif;
    }

关键属性表
| 属性 | 作用 | 示例值 |
|—————|——————————|—————————|
| font-family | 定义字体名称 | ‘MyFont’ |
| src | 指定字体文件路径及格式 | url(‘font.woff2’) format()|
| font-weight | 设置权重(400=正常,700=粗体)| 400 |
| font-style | 定义样式(正常/斜体/倾斜) | italic |
| unicode-range | 限制字符范围(优化性能) | U+0000-00FF |

通过 Google Fonts 加载网络字体

Google Fonts 提供大量免费开源字体,通过链接 CSS 文件即可快速使用。

实现步骤

  1. 访问 Google Fonts 选择字体
  2. 复制提供的 <link> 标签到 HTML <head>
    <link href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap" rel="stylesheet">
  3. 在 CSS 中调用:
    body {
      font-family: 'Roboto', sans-serif;
    }

参数说明表
| 查询参数 | 作用 | 示例 |
|——————|———————————-|——————————-|
| family= | 指定字体家族名称 | Roboto |
| weight@ | 加载不同粗细版本(用;分隔) | 400,700 |
| display= | 字体加载策略 | swap(默认)、blockfallback |
| subset= | 优化加载语言子集 | latin,cyrillic |

使用外部字体库(如 Typekit/Fonts.com)

商业字体库提供专业字体,需注册账号获取授权代码。

典型流程

  1. 在字体平台选择并授权字体
  2. 嵌入生成的脚本代码:
    <script src="https://use.typekit.net/xxxxx.js"></script>
    <script>try{Typekit.load({async:true});}catch(e){}`
  3. 通过 CSS 调用字体族名称

设置字体栈(Font Fallback)

当指定字体不可用时,按顺序回退到备选字体。

示例代码

h1 {
  font-family: 'SpecialFont', 'Arial Narrow', Arial, sans-serif;
}

优先级策略表
| 优先级 | 说明 |
|—————-|———————————-|
| 首个字体 | 优先尝试匹配的字体 |
| 通用字体族 | 如 serif/sans-serif/monospace |
| 系统安全字体 | 保证所有设备都显示(如 Arial) |
| 通用备选方案 | 最后使用 sans-serif/serif |

常见问题与解答

Q1:如何检测自定义字体是否生效?
A1:可通过开发者工具检查:

  1. 选中应用字体的元素,查看 computed 样式中的 font-family
  2. 输入生僻字符(如中文/日文),确认字符是否显示正确
  3. 临时修改字体名称,观察渲染变化

Q2:@font-face 需要包含哪些字体格式?
A2:为兼容不同浏览器,建议包含:

  • .woff2(现代浏览器,压缩格式)
  • .woff(旧版浏览器)
  • .ttf(移动端备用)
  • .svg(iOS 早期版本)
    实际可根据目标用户群体精简格式,但至少需要 .woff2 + `.w
0