font-family的使用
CSS中font-family属性的用途:
- 定义 HTML 文档中文本元素的视觉外观。
- 控制用于呈现文本的字体(字体样式)。
font-family 的语法:
CSS
font-family: 字体1, 字体2, 通用字体系列generic-family;
-
字体名称:
- 指定所需的字体系列,以逗号分隔。
- 如果字体名称包含空格(例如“Open Sans”),请用引号引起来。
- 使用网络安全字体(大多数系统上普遍安装可用的字体):
- 无衬线体(例如 Arial、Verdana)
- 衬线(例如,Times New Roman、Georgia)
- 等宽字体(例如 Courier New、Lucida Console)
- 要获得更广泛的选择,可以考虑使用网络字体。但中文字体体积庞大,使用网络字体存在技术困难。
-
通用字体系列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来添加字体,但这是最终用户的选择,而不是网站开发者的。