【CSS】CSS字体样式【CSS基础知识详解】

简介: 【CSS】CSS字体样式【CSS基础知识详解】

🌙CSS字体认知

文字是网页界面上最常见的元素,而文字的字体、大小和文字样式等都可以通过CSS来设置。

🌙字型

在 CSS 中,有五个通用字型:

  • 衬线字体(Serif)- 在每个字母的边缘都有一个小的笔触。它们营造出一种形式感和优雅感
    特点:文字笔画粗细不均匀,并且首尾有笔锋装饰
    场景:报刊书籍中应用广泛
    常见该系列字体:宋体、Times New Roman
  • 无衬线字体(Sans-serif)- 字体线条简洁(没有小笔画)。它们营造出现代而简约的外观。
    特点:文字笔画粗细均匀,并且首尾无修饰
    场景:网页中大多采用无衬线字体
    常见该系列字体:黑体、Arial
  • 等宽字体(Monospace)- 这里所有字母都有相同的固定宽度。它们创造出机械式的外观。
    特点:每个字母或文字的宽度相等
    场景:一般用于程序代码编写,有利于代码的阅读和编写
    常见该系列字体:Consolas、fira code
  • 草书字体(Cursive)- 模仿了人类的笔迹。
  • 幻想字体(Fantasy)- 是装饰性/俏皮的字体。

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

🌸Serif 和 Sans-serif 字体

在计算机屏幕上,sans-serif字体被认为比serif字体容易阅读

一些字体的例子:

通用字型 字体名称实例
Serif Times New Roman Georgia Garamond
Sans-serif Arial Verdana Helvetica
Monospace Courier New Lucida Console Monaco
Cursive Brush Script MT Lucida Handwriting
Fantasy Copperplate Papyrus

🌸font-family属性

在CSS中,我们使用font-family属性规定文本的字体。

通常 font-family 属性应该设置多个值,以保证当浏览器不支持第一种字体时使用其他的备选字体。

注意: 如果字体系列的名称超过一个字,它必须用引号,如 font family:“宋体”。

多个字体系列用一个逗号分隔指明。

例如:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>花无缺</title>
    <style>
        /*设置段落p的字体为楷体,如果浏览器不支持则采用宋体,依次类推*/
        p {
            font-family: "楷体", "宋体",serif;
        }
        /*设置div的字体为隶书,如果不支持隶书,则采用浏览器默认字体*/
        div {
            font-family: "隶书";
        }
    </style>
</head>
<body>
    <p>
        通常font-family属性应该设置多个值,以保证当浏览器不支持第一种字体时使用其他的备选字体。
    </p>
    <div>
        如果字体系列的名称超过一个字,它必须用引号,如font family:"宋体"。
        多个字体系列是用一个逗号分隔指明。
    </div>
</body>
</html>

🌙字体样式

属性名:font-style

作用:用于指定斜体文本

取值:

  • normal - 文字正常显示
  • italic - 文本以斜体显示
  • oblique - 文本为“倾斜”(倾斜与斜体非常相似,但支持较少)

例如:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>花无缺</title>
    <style>
        p {
            font-style: normal;
        }
        div {
            font-style: italic;
        }
        span {
            font-style: oblique;
        }
    </style>
</head>
<body>
    <p>字体样式</p>
    <div>字体样式</div>
    <span>字体样式</span>
</body>
</html>

🌙字体大小

属性:font-size

作用:设置字体的大小

取值:

取值 效果
xx-small/x-small/small/medium/large/x-large/xx-large 把字体的尺寸设置成相对于父元素不同的尺寸,从xx-small到xx-large 默认值:medium。
smaller 把 font-size 设置为比父元素更小的尺寸
larger 把 font-size 设置为比父元素更大的尺寸
px/cm/pt/in/mm 把 font-size 设置为一个固定的尺寸
% 把 font-size 设置为基于父元素的一个百分比的大小
inherit 从父元素继承
em 1em和当前字体大小相等。在浏览器中默认的文字大小是16px。因此,1em的默认大小是16px。可以通过下面这个公式将像素转换为em:px/16=em
rem 1rem = 1HTML字号大小

例如:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>花无缺</title>
    <style>
        body {
            color: blue;
        }
        .text2 {
            font-size: 30px;
        }
        .text3 {
            font-size: 2em;
        }
        .text4 {
            font-size: larger;
        }
        .text5 {
            font-size: 50%;
        }
    </style>
</head>
<body>
    <p class="text1">花无缺,这是浏览器默认字体大小</p>
    <p class="text2">这是使用px设置的字体大小,大小为30px</p>
    <p class="text3">这是使用em设置的字体大小,大小为2em,相当于32px</p>
    <p class="text4">这是使用small设置的字体大小</p>
    <p class="text5">这是使用百分比设置的字体大小,是父元素body16px的50%,相当于8px</p>
</body>
</html>

🌙字体粗细

属性名:font-weight

作用:设置字体的粗细

取值:

描述
normal 默认值。定义标准的字符。
bold 定义粗体字符。
bolder 定义更粗的字符。
lighter 定义更细的字符。
100 200 300 400 500 600 700 800 900 定义由细到粗的字符。400 等同于 normal,而 700 等同于 bold。
inherit 规定应该从父元素继承字体的粗细。

例如:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>花无缺</title>
    <style>
        .text1 {
            font-weight: bold;
        }
        .text2 {
            font-weight: lighter;
        }
        .text3 {
            font-weight: 900;
        }
    </style>
</head>
<body>
    <p class="text1">字体粗细</p>
    <p class="text2">字体粗细</p>
    <p class="text3">字体粗细</p>
    <!-- <p class="text4">字体粗细</p> -->
</body>
</html>

注意:

  • 不是所有字体都提供九种粗细,因此部分取值页面中无变化

🌙小型大写字母字体

属性名:font-variant

作用:设置小型大写字母的字体显示文本,这意味着所有的小写字母均会被转换为大写,但是所有使用小型大写字体的字母与其余文本相比,其字体尺寸更小

取值:

描述
normal 默认值。浏览器会显示一个标准的字体。
small-caps 浏览器会显示小型大写字母的字体。
inherit 规定应该从父元素继承 font-variant 属性的值。

例如:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>花无缺</title>
    <style>
        .nomal {
            font-variant: normal;
        }
        .small {
            font-variant: small-caps;
        }
    </style>
</head>
<body>
    <p class="nomal">This is a article.</p>
    <p class="small">This is a article.</p>
</body>
</html>

🌙字体复合属性

属性名:font

作用:将字体的各种属性写在一起

取值:font:style weight size family;

例如:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>花无缺</title>
    <style>
    /*将div的字体设置为斜体,粗细为700,大小为20px,字体为华文楷体*/
        div {
            font: italic 700 20px 华文楷体;
        }
    </style>
</head>
<body>
    <div>字体复合属性</div>
</body>
</html>

使用 font 时只能省略前两个属性(style、weight),如果省略了,相当于设置了默认值,而且必须按照这个顺序写。

好了,CSS字体相关的知识就到这里了,更多CSS知识都将更新在【CSS专栏】中,欢迎大家订阅关注,一起学习进步!

相关文章
|
26天前
|
前端开发
如何设置 CSS 盒子模型的边框样式?
CSS盒子模型的边框样式可以通过`border`属性设置,包括边框宽度、样式和颜色。例如:`border: 2px solid red;` 设置了2像素宽的红色实线边框。也可分别设置四边,如`border-top`、`border-right`等。
|
1月前
|
前端开发
css 设置背景色渐变、字体颜色渐变
css 设置背景色渐变、字体颜色渐变
|
15天前
|
前端开发 JavaScript UED
|
1月前
|
前端开发 JavaScript
CSS样式穿透技巧:利用scoped与deep实现前端组件样式隔离与穿透
CSS样式穿透技巧:利用scoped与deep实现前端组件样式隔离与穿透
159 1
|
1月前
|
存储 前端开发 安全
详解CSS之Web 字体
详解CSS之Web 字体
22 4
|
1月前
|
编解码 前端开发 JavaScript
使用 CSS 打印样式为 Web 页面设置专业的打印机效果
使用 CSS 打印样式为 Web 页面设置专业的打印机效果
52 2
|
20天前
|
前端开发
HTML 样式- CSS3
内部样式表适用于单个文件的特别样式,通过&lt;head&gt;部分的&lt;style&gt;标签定义;外部样式表适用于多个页面,通过&lt;link&gt;标签引用外部CSS文件;&lt;style&gt;定义样式,&lt;link&gt;引用资源;已弃用的标签有&lt;font&gt;、&lt;center&gt;、&lt;strike&gt;,属性有color和bgcolor。
|
20天前
HTML 样式- CSS2
HTML样式实例展示了如何使用`font-family`、`color`和`font-size`属性来定义字体样式,以及使用`text-align`属性来设置文本的对齐方式。示例包括标题和段落的样式设置。
|
20天前
|
前端开发
HTML 样式- CSS1
CSS (层叠样式表) 用于为 HTML 元素添加样式,包括颜色、文本、盒子模型等。CSS 可以通过内联样式、内部样式表或外部引用的方式添加到 HTML 中。推荐使用外部引用方式。本教程将介绍如何使用 CSS 为 HTML 添加样式,并提供实例演示。
|
2月前
|
前端开发
【前端web入门第三天】02 CSS字体和文本
本文详细介绍了CSS中字体和文本的相关属性。字体部分涵盖字体大小、粗细、样式、行高、字体族及`font`复合属性,通过具体示例展示了如何设置和使用这些属性。文本部分则讲解了文本缩进、对齐方式、修饰线及文字颜色等属性,并提供了实用的代码示例。此外,还简要介绍了调试工具中的一些细节,如错误属性标识和属性生效状态的控制。
66 28