CSS学习记录09

CSS字体

通用字体族

在CSS中,有5个通用字体族:

  • 衬线字体(Serif)- 在每个字母的边缘都有一个小的笔触。它们营造出一种形式感和优雅感。
  • 无衬线字体(Sans-serif)- 字体线条简洁(没有小笔画)。它们营造出现代而简约的外观。
  • 等宽字体(Monospace) - 这里所有字母都有相同的固定宽度。它们创造出机械式的外观。
  • 草书字体(Cursive)- 模仿了人类笔迹。
  • 幻想字体(Fantasy)- 是装饰性/俏皮的字体。

所有不同的字体名称都属于这五个通用字体系列之一。

Serif 和 Sans-serif 字体之间的区别

一些字体举例:

CSS font-family属性

在CSS中,使用font-family 属性规定文本的字体。 font - family 属性应包含多个字体名称作为"后备"系统,已确保浏览器/操作系统之间的最大兼容性。请以您需要的字体开始,并以通用系列结束(如果没有其他可用字体,则让浏览器选择通用系列中的相似字体)。字体名称应以逗号分隔。

注释:如果字体名称不止一个单词,则必须用引号引起来,例如:"Times New Roman"。

举例:

css 复制代码
.p1 {
  font-family: "Times New Roman", Times, serif;
}

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

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

CSS字体样式

字体样式

font-style 属性主要用于指定斜体文本。

此属性可设置三个值:

  • normal - 文字正常显示
  • italic - 文本以斜体显示
  • oblique - 文本为"倾斜"(倾斜与斜体非常相似,但支持较少)
css 复制代码
p.normal {
  font-style: normal;
}

p.italic {
  font-style: italic;
}

p.oblique {
  font-style: oblique;
}

字体粗细

font-weight属性指定字体的粗细:

css 复制代码
p.normal {
  font-weight: normal;
}

p.thick {
  font-weight: bold;
}

字体变体

font-variant属性指定是否以small-caps字体(小型大写字母)显示文本。

在small-caps字体中,所有小写字母都将转换为大写字母。但是,转换后的大写字母的字体大小小于文本中原始大写字母的字体大小。

css 复制代码
p.normal {
  font-variant: normal;
}

p.small {
  font-variant: small-caps;
}

CSS字体大小

字体大小

font-size 属性设置文本的大小。font-size值可以是绝对或相对大小。

绝对尺寸:

  • 将文本设置为指定大小
  • 不允许用户在所有浏览器中更改文本大小(可访问性不佳)
  • 当输出的物理尺寸已知时,绝对尺寸很有用

相对尺寸:

  • 设置相对于周围元素的大小
  • 允许用户在浏览器中更改文本大小

(提示:如果您没有指定字体大小,则普通文本(如段落)的默认大小为16px(16px = 1em)。)

以像素设置字体大小

使用像素设置文本大小可以完全控制文本大小:

css 复制代码
h1 {
  font-size: 40px;
}

h2 {
  font-size: 30px;
}

p {
  font-size: 14px;
}

提示:如果您使用了像素,仍然可以使用缩放工具来调整整个页面的大小。

用em设置字体大小

为了允许用户调整文本大小(在浏览器菜单中),许多开发人员使用em而不是像素。

1em等于当前字体大小。浏览器中默认文本为16px。因此,默认大小1em为16px。可以使用公式从像素到em来计算大小:pixels/16 = em。

css 复制代码
h1 {
  font-size: 2.5em; /* 40px/16=2.5em */
}

h2 {
  font-size: 1.875em; /* 30px/16=1.875em */
}

p {
  font-size: 0.875em; /* 14px/16=0.875em */
}

使用百分比和Em的组合

css 复制代码
body {
  font-size: 100%;
}

h1 {
  font-size: 2.5em;
}

h2 {
  font-size: 1.875em;
}

p {
  font-size: 0.875em;
}

它在所有浏览器中显示相同的文本大小,并允许所有浏览器缩放或调整文本大小!

响应式字体大小

可以使用vw单位设置文本大小,它的意思是"视口宽度"("viewport width")。这样,文本大小将遵循浏览器窗口的大小。

视口(Viewport)是浏览器窗口的大小。 1vw = 视口宽度的1%。如果视口为50厘米宽,则1vw为0.5厘米。

html 复制代码
<h1 style="font-size:10vw">Hello World</h1>

CSS谷歌字体

谷歌字体

如果您不想使用HTML中的任何标准字体,则可以使用Google Fonts API 向页面添加数百种其他字体。只需添加一个样式表链接并引用您选择的字体系列:

html 复制代码
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Sofia">
<style>
body {
  font-family: "Sofia";
  font-size: 22px;
}
</style>
</head>
<body>

<h1>Sofia Font</h1>
<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</p>

</body>
</html>

CSS简写字体属性

为了缩短代码,也可以在一个属性中指定所有单个字体属性。

font属性是以下属性的简写属性:

  • font-style
  • font-variant
  • font-weight
  • font-size/line-height
  • font-family

使用简写声明设置一些字体属性:

css 复制代码
p.a {
  font: 20px Arial, sans-serif;
}

p.b {
  font: italic small-caps bold 12px/30px Georgia, serif;
}

注意:font-size 和 font-family 的值是必需的。如果缺少其他值之一,则会使用其默认值。

所有CSS字体属性

属性 描述
font 简写属性。在一条声明中设置所有字体属性。
font-family 规定文本的字体系列(字体族)。
font-size 规定文本的字体大小。
font-style 规定文本的字体样式。
font-variant 规定是否以小型大写字母的字体显示文本。
font-weight 规定字体的粗细。
相关推荐
Ricon组态薄荷糖7 分钟前
Ricon组态系统:工业组件开发指南与实践
前端·后端·物联网
传奇开心果编程8 分钟前
【Jetpack Compose基础语法学与练】第9课 SideEffect副作用 + LaunchedEffect,处理异步任务和生命周期
android·学习·ui·kotlin·android jetpack
flash俊杰12 分钟前
Electron 桌面应用的进程模型:为什么 fork Next.js standalone
前端
传奇开心果编程12 分钟前
【ArkUI 练中学】第14课:应用性能优化实战
学习·ui·华为·harmonyos
沙蒿同学22 分钟前
我把架构约定编译成了会变红的测试:Wails v2 + Go + Vue3 桌面脚手架实战
前端·后端·github
cpolar技术支持25 分钟前
本地 Playwright 测试报告怎么远程复盘?Trace Viewer 跑起来后,用 cpolar 分享失败现场
前端·自动化测试·测试工具·cpolar·playwright
wordbaby25 分钟前
企业级后台管理系统路由设计与最佳实践指南
前端
胡志辉的博客34 分钟前
【完全开源】IP 纯净度检测 可一键部署到自己的CF
前端·javascript·chrome·ip·chromium
Hilaku1 小时前
作为面试官,我最怕遇到什么样的候选人?
前端·javascript·程序员
PNP Robotics1 小时前
【PNP具身解读】GPT6 Astra:具身智能新范式,大模型 + Franka机器人快速落地验证一、GPT6 Astra 背后的布局、数据与具身方向
人工智能·学习·机器学习·机器人