HTML CSS Web 字体 @font-face 属性

Web 字体允许 Web 设计人员使用用户计算机上未安装的字体。
当你找到/购买了想要使用的字体后,只需将字体文件包含在您的 Web 服务器上,它将在需要时自动下载给用户。
你的“自有”字体在 CSS @font-face 规则中进行定义。

不同的字体格式
TrueType 字体 (TTF)
TrueType 是 1980 年代后期由 Apple 和 Microsoft 开发的字体标准。 TrueType 是 Mac OS 和 Microsoft Windows 操作系统最常用的字体格式。
OpenType 字体 (OTF)
OpenType 是可缩放计算机字体的格式。它基于 TrueType 构建,并且是 Microsoft 的注册商标。今天,OpenType 字体在主要计算机平台上得到普遍使用。
Web 开放字体格式 (WOFF)
WOFF 是用于网页的字体格式。它于 2009 年开发,现已成为 W3C 的推荐标准。 WOFF 本质上是具有压缩和其他元数据的 OpenType 或 TrueType。目标是支持在有带宽限制的网络上从服务器到客户端进行字体分发。
Web 开放字体格式 (WOFF 2.0)
TrueType/OpenType 字体比 WOFF 1.0 提供更好的压缩。
SVG 字体/形状
SVG 字体允许在显示文本时将 SVG 用作字形。 SVG 1.1 规范定义了一个字体模块,该模块允许在 SVG 文档中创建字体。您还可以将 CSS 应用于 SVG 文档,同时 @font-face 规则可以应用于 SVG 文档中的文本。
嵌入式 OpenType 字体 (EOT)
EOT 字体是 Microsoft 设计的 OpenType 字体的紧凑形式,用作网页上的嵌入式字体。

对字体格式的浏览器支持

表格中的数字注明了完全支持该字体格式的首个浏览器版本。

字体格式IE浏览器谷歌浏览器火狐浏览器Safari浏览器
TTF/OTF9.0*4.03.53.1
WOFF9.05.03.65.1
WOFF214.036.039.010.0
SVG不支持不支持不支持3.2
EOT6.0不支持不支持不支持
*IE:该字体格式仅在设置为 “installable” 时有效。
*Firefox:默认情况下不支持,但可以启用(需要将标志设置为 “true” 才能使用 WOFF2)。

如何使用需要的字体
在 @font-face 规则中:首先定义字体的名称(例如 myFirstFont),然后指向该字体文件。
提示:字体 URL 始终使用小写字母。大写字母可能会在 IE 中产生意外结果。
如需将字体用于 HTML 元素,请通过 font-family 属性引用字体名称(myFirstFont),代码如下:

<style> 
@font-face {
   font-family: myFirstFont;
   src: url(sansation_light.woff);
}

* {
   font-family: myFirstFont;
}
</style>

<div>
通过 CSS,网站可以使用<b>预选的 "web-safe" 字体以外的其他字体</b>。
</div>
<p><b>注释:</b>Internet Explorer 8 以及更早的版本不支持 @font-face 规则。</p>

使用粗体文本:必须添加另一条 @font-face 规则,其中包含粗体文本的描述符。
文件 “sansation_bold.woff” 是另一个字体文件,其中包含 Sansation 字体的粗体字符。
每当带有 “myFirstFont” 字体族的一段文本应呈现粗体时,浏览器都会使用它。
这样,您就可以为同一字体设置许多 @font-face 规则。

<style> 
@font-face {
   font-family: myFirstFont;
   src: url(sansation_light.woff);
}

@font-face {
   font-family: myFirstFont;
   src: url(sansation_bold.woff);
   font-weight: bold;
}

* {
   font-family: myFirstFont;
}
</style>
<div>
通过 CSS,网站可以使用<b>预选的 "web-safe" 字体以外的其他字体</b>。
</div>
<p><b>注释:</b>Internet Explorer 8 以及更早的版本不支持 @font-face 规则。</p>

CSS 字体描述

下表列出了能够在 @font-face 规则内定义的所有字体描述符(font descriptor):

描述符描述
font-familyname必需。定义字体名称。
srcURL必需。定义字体文件的 URL。
font-stretchnormalcondensedultra-condensedextra-condensedsemi-condensedexpandedsemi-expandedextra-expandedultra-expanded可选。定义应如何拉伸字体。默认值是 “normal”。
font-stylenormalitalicoblique可选。定义字体的样式。默认值是 “normal”。
font-weightnormalbold100200300400500600700800900可选。定义字体的粗细。默认值是 “normal”。
unicode-rangeunicode-range可选。定义字体支持的 UNICODE 字符范围。默认值是 “U+0-10FFFF”。

如果你发现错误或有其他见解,请给www.zhuei.com留言,我们会尽快更新本文!

发表评论

邮箱地址不会被公开。 必填项已用*标注