设置网页字体的实际操作(font-family)

css font-family code screenshot

font-family的使用

CSS中font-family属性的用途:

  • 定义 HTML 文档中文本元素的视觉外观。
  • 控制用于呈现文本的字体(字体样式)。

font-family 的语法:

CSS

font-family: 字体1, 字体2, 通用字体系列generic-family;

  1. 字体名称:

    • 指定所需的字体系列,以逗号分隔。
    • 如果字体名称包含空格(例如“Open Sans”),请用引号引起来。
    • 使用网络安全字体(大多数系统上普遍安装可用的字体):
      • 无衬线体(例如 Arial、Verdana)
      • 衬线(例如,Times New Roman、Georgia)
      • 等宽字体(例如 Courier New、Lucida Console)
    • 要获得更广泛的选择,可以考虑使用网络字体。但中文字体体积庞大,使用网络字体存在技术困难。
  2. 通用字体系列Generic Family(后备Fallback):

    • 如果用户系统上没有指定的字体可用,则将通用字体系列Generic Family作为最后的手段。
    • 通用字体系列指的是某一类字体。常见的通用字体系列:
      • 衬线serif
      • 无衬线字体sans-serif
      • 等宽字体monospace
      • 草书cursive
      • 幻想fantasy

浏览器的字体选择过程:

  • 浏览器尝试使用列表中的第一个字体来呈现文本,如果:
    • 这个字体已经安装在用户的系统上,或者
    • 可通过 @font-face 规则使用(从远程下载字体,适用于网络字体)。
  • 如果没有可用的特定字体,浏览器将尝试(fallback)下一个字体或下一个匹配的通用字体系列Generic Family。

CSS

p { font-family: "Open Sans", Arial, sans-serif; }

在此示例中:

  • 浏览器首先尝试使用“Open Sans”。
  • 如果“Open Sans”不可用,则使用 Arial。
  • 如果“Open Sans”和 Arial 都不可用,则使用通用的 sans-serif 字体作为备用字体。

需要指出的是:

  • 指定多种字体会增加找到合适字体的可能性。
  • 字体的顺序很重要,因为浏览器会尝试按指定的优先顺序使用它们。
  • 字体的粗细和风格(例如粗体、斜体)由单独的属性(例如 font-weight 和 font-style)控制。
  • 使用网络字体需要额外设置(@font-face)。

通过有效地使用 font-family,您可以实现所需的视觉样式并增强用户的体验。

中文字体的设置

在了解了fong-family的基本的使用规则之后,再来研究一下中文字体的设置。根据用途,字体可以分为三类:

  • 特殊字体:这是网页显示的理想字体,通常也是网页美术设计使用的字体。这种字体通常只在部分手机或电脑中存在。
  • 通用字体:几乎没有一种中文字体在所有装置中存在,所以通用字体可能会多于一个。选择的标准是:字体风格接近特殊字体,并保持最大的通用性。
  • 英文字体:通常中文网站对英文的要求并不高,可以使用Arial, Helvetica字体或者sans-serif, serif通用类别。

font-family: 特殊字体1, 特殊字体2, 通用字体1, 通用字体2, 英文字体

如果喜欢粗度均匀或黑体,sans serif字体:font-family: "Microsoft YaHei", SimHei, Arial, Helvetica, sans-serif;

如果喜欢古典或宋体,serif字体:font-family: SimSun, FangSong, Times New Roman, serif;

这里是一些常用的中文字体的中英对照:

  • 黑体:SimHei
  • 幼圆:YouYuan
  • 微软雅黑: Microsoft YaHei
  • 宋体:SimSun
  • 仿宋: FangSong
  • 楷体: KaiTi
  • 隶书:LiSu

最后的思考

作为网站管理者和开发者,并没有完全的威力来控制字体在客户端的显示。每一天都有新的字体在诞生。手机等移动装置在蓬勃发展,由于内存带宽的限制,这些移动装置内的预装字体有限。所以无论你如何配置font-family属性,在众多手机中都会使用手机默认字体来显示,比如在Android手机中,通常会使用Droid字体来显示。尽管手机可以通过一些app来添加字体,但这是最终用户的选择,而不是网站开发者的。