非常教程

CSS参考手册

字体 | Fonts

通用字型 | font-family

font-family属性为所选元素指定一个或多个字体族名和/或通用族名的优先列表。

/* A font family name and a generic family name */
font-family: Gill Sans Extrabold, sans-serif;
font-family: "Goudy Bookletter 1911", sans-serif;

/* A generic family name only */
font-family: serif;
font-family: sans-serif;
font-family: monospace;
font-family: cursive;
font-family: fantasy;
font-family: system-ui;

/* Global values */
font-family: inherit;
font-family: initial;
font-family: unset;

网页作者应当至少在font-family列表中添加一个通用的字体族名,因为无法保证用户的计算机内已经安装了指定的字体,也不能保证使用@font-face提供的字体能够正确地下载。提供通用的字体族使得浏览器可以在无法得到最佳字体的情况下使用一个相对接近的备选字体。

通常会使用属性缩写font来设置font-size和其他与字体相关的属性。

注意:因为不能保证任何给定的字体可用,所以您应该始终在字体族列表中至少包含一个通用族名称。这可以让浏览器在必要时选择可接受的后备字体。

注意:font-family属性指定的是一个优先级从高到低的可选字体列表。 字体的选定不是在发现用户计算机上安装的列表中的第一个字体时停止。相反,对字体的选择是逐字进行的。也就是说即使某个字符周围都在某个字体中可以显示,但该字符在当前的字体文件中没有适合的图形,那么会继续尝试列表中靠后的字体。不过这在Internet Explorer 6以及之前的版本中不适用。

默认值

取决于用户

应用于

all elements. It also applies to ::first-letter and ::first-line.

是否继承

yes

媒体

visual

计算值

as specified

Animation type

discrete

规范顺序

the unique non-ambiguous order defined by the formal grammar

语法

font-family属性列出一个或多个字体系列,用逗号分隔。每个字体系列被指定为 <family-name><generic-name>

下面的例子列出了两个字体系列,第一个是 <family-name>,第二个是a<generic-name>

font-family: Gill Sans Extrabold, sans-serif;

取值

<family-name>一个字体族的名字。例如,“Times”和“Helvetica”是字体系列。包含空格的字体家族名称应该被引用。

<generic-name>

通用字体族名是一种备选机制,用于在指定的字体不可用时给出较好的字体。通用字体族名都是关键字,所以不可以加引号。 在列表的末尾应该至少有一个通用字体族名。 以下是该属性可能的取值以及他们的定义。

serif带衬线字体,笔画结尾有特殊的装饰线或衬线。

例如:Lucida Bright,Lucida Fax,Palatino,"Palatino Linotype",Palladio,"URW Palladio",serif.

sans-serif无衬线字体,即笔画结尾是平滑的字体。

例如,"Open Sans","Fira Sans","Lucida Sans","Lucida Sans Unicode","Trebuchet MS","Liberation Sans","Nimbus Sans L",sans-serif.

monospace等宽字体,即字体中每个字宽度相同。

例如,"Fira Mono","DejaVu Sans Mono",Menlo,Consolas,"Liberation Mono",Monaco,"Lucida Console",monospace.

cursive草书字体。这种字体有的有连笔,有的还有特殊的斜体效果。因为一般这种字体都有一点连笔效果,所以会给人一种手写的感觉。

例如,"Brush Script MT","Brush Script Std","Lucida Calligraphy","Lucida Handwriting","Apple Chancery",cursive.

fantasyFantasy字体主要是那些具有特殊艺术效果的字体。

E.g.Papyrus,Herculanum,Party LET,Curlz MT,Harrington,fantasy.

有效的字体族名

字体族名或者是引号包括的字符串,或者是不含引号的一个或多个合法标识串构成的。这意味着在没有带引号的字体族名的开头是不能使用标点符号字符和数字字符的。

例如,下列声明是有效的:

font-family: Gill Sans Extrabold, sans-serif;
font-family: "Goudy Bookletter 1911", sans-serif;

以下声明为无效*

font-family: Goudy Bookletter 1911, sans-serif;
font-family: Red/Black, sans-serif;
font-family: "Lucida" Grande, sans-serif;
font-family: Ahem!, sans-serif;
font-family: test@foo, sans-serif;
font-family: #POUND, sans-serif;
font-family: Hawaii 5-0, sans-serif;

形式语法

[ <family-name> | <generic-family> ]#where 
<family-name> = <string> | <custom-ident>+
<generic-family> = serif | sans-serif | cursive | fantasy | monospace

实例

一些常见的字体族

.serif {
  font-family: Times, Times New Roman, Georgia, serif;
}

.sansserif {
  font-family: Verdana, Arial, Helvetica, sans-serif;
}

.monospace {
  font-family: Lucida Console, Courier, monospace;
}

.cursive {
  font-family: cursive;
}

.fantasy {
  font-family: fantasy;
}

规范

Specification

Status

Comment

CSS Fonts Module Level 4The definition of 'extended generics' in that specification.

Editor's Draft

Adds new generic font families, specifically: system-ui, emoji, math, and fangsong.

CSS Fonts Module Level 3The definition of 'font-family' in that specification.

Candidate Recommendation

No significant change

CSS Level 2 (Revision 1)The definition of 'font-family' in that specification.

Recommendation

No significant change

CSS Level 1The definition of 'font-familiy' in that specification.

Recommendation

Initial definition

浏览器兼容性

Feature

Chrome

Edge

Firefox (Gecko)

Internet Explorer

Opera

Safari

Basic support

1

(Yes)

1.0 (1.7 or earlier)

3.0

3.5

1.0

system-ui

56

No support

No support 1

No support

43

? 2

Feature

Android Webview

Chrome for Android

Edge

Firefox Mobile (Gecko)

IE Phone

Opera Mobile

Safari Mobile

Basic support

1

1

(Yes)

1.0 (1)

6.0

6

1.0

system-ui

56

56

No support

?

No support

43

? 2

CSS

层叠样式表( Cascading Style Sheets )是一种用来表现 HTML 或 XML 等文件样式的计算机语言。CSS 不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。

CSS目录

1.动画和转换 | Animations & Transitions
2.背景和边框 | Backgrounds & Borders
3.基本框模型 | Basic Box Model
4.基本用户界面 | Basic User Interface
5.框对齐 | Box Alignment
6. 级联和继承 | Cascading & Inheritance
7.颜色 | Color
8. 合成与混合 | Compositing & Blending
9.条件和规则 | Conditional Rules
10.计数器样式 | Counter Styles
11.设备适配 | Device Adaptation
12.扩展 | Extensions
13.滤镜效果 | Filter Effects
14.灵活的框布局 | Flexible Box Layout
15.字体 | Fonts
16.片段模块 | Fragmentation
17.全屏 API | Fullscreen API
18. 生成内容 | Generated Content
19.网格布局 | Grid Layout
20.图像值 | Image Values
21.初始线格局 | Inline Layout
22.列表和计数器 | Lists & Counters
23.逻辑属性 | Logical Properties
24.面具 | Masking
25.媒体查询 | Media Queries
26.杂项 | Miscellaneous
27.Miscellaneous Level 1
28.Miscellaneous Level 2
29.运动路径 | Motion Path
30. 多列布局 | Multi-column Layout
31.命名空间 | Namespaces
32.项目模型 | Object Model View
33.网页媒体 | Paged Media
34.定位布局 | Positioned Layout
35.伪元素 | Pseudo-
36.节奏大小 | Rhythmic Sizing
37. Ruby布局 | Ruby Layout
38.可缩放矢量图形 | Scalable Vector Graphics
39.滚动快照 | Scroll Snap
40.选择 | Selectors
41.形状 | Shapes
42.文本 | Text
43.文字装饰 | Text Decoration
44.变换 | Transforms
45.值和单位 | Values & Units
46.变量 | Variables
47.写入模型 | Writing Modes
48.CSS 教程
49.CSS 创建
50.CSS Id 和 Class选择器
51.CSS 简介
52.CSS 盒子模型
53.CSS Table(表格)
54.CSS 列表样式(ul)
55.CSS 链接(link)
56.CSS Fonts(字体)
57.CSS Text(文本)
58.CSS Backgrounds(背景)
59.CSS Display(显示) 与 Visibility(可见性)
60.CSS 尺寸 (Dimension)
61.CSS 分组和嵌套
62.CSS 轮廓(outline)属性
63.CSS Border(边框)
64.CSS 图像透明/不透明
65.CSS 导航栏
66.CSS 伪元素
67.CSS 伪类
68.CSS Float(浮动)
69.CSS Position(定位)
70.CSS 总结
71.CSS 属性选择器
72.CSS 媒体类型
73.CSS 图像拼合技术
74.CSS 实例
75.CSS 组合选择符
76.响应式 Web 设计 – 框架
77.响应式 Web 设计 – 视频(Video)
78.CSS 提示工具(Tooltip)
79.CSS 布局 Overflow
80.CSS 计数器
81.CSS 表单