![Web前端学习笔记:HTML5+CSS3+JavaScript](https://wfqqreader-1252317822.image.myqcloud.com/cover/365/31304365/b_31304365.jpg)
6.1 CSS常用文本属性
首先介绍CSS的文本属性,使用CSS属性不仅可以控制文字的大小、颜色和字体等,还可以设置整个段落的行高、对齐方式等属性,大大提高网页的可读性。
6.1.1 字体、字号与颜色属性
1.字体
(1)font-family:字体族,设置字体
可以同时设置多个字体,多个字体样式间用逗号分隔,浏览器解析时,会从左往右依次查找。选择可用字体,当浏览器找不到可用字体时,将使用系统默认字体。
一般情况下,前面使用具体字体名称,最后一个使用字体族类名称。表6-1是常用字体族名称及说明。图6-1所示为衬线体与非衬线体。
表6-1 常用字体族名称及说明
![](https://epubservercos.yuewen.com/B78585/16948916704924306/epubprivate/OEBPS/Images/978-7-111-60090-9-Part02-29.jpg?sign=1738843573-vKVLLiZ494gOvIvjQU3Ycld5gR65jl9w-0-5fa4941f420378c5927077ebabfa3791)
![](https://epubservercos.yuewen.com/B78585/16948916704924306/epubprivate/OEBPS/Images/978-7-111-60090-9-Part02-30.jpg?sign=1738843573-7OKYwVb4GujJSZ37gqz5x6L9dwsdk7jn-0-4243a83cd2a9f36f237e311a978f673e)
图6-1 衬线体与非衬线体
基本语法如下:
![](https://epubservercos.yuewen.com/B78585/16948916704924306/epubprivate/OEBPS/Images/978-7-111-60090-9-Part02-31.jpg?sign=1738843573-ictVJUQ4JG3QlVzGsn3YjoYjHYnP2y4P-0-3dd2b34111dead14def4d2679d66a6df)
(2)font-style:设置字体样式
通常使用其中的两个属性值:正常(normal)和斜体(italic)。
基本语法如下:
font-style:italic;
(3)font:缩写形式
font的缩写形式依次为font-style、font-weight、font-size/line-height、font-family,分别是字体样式、字体粗细、字号/行高、字体族。
在使用font属性时须注意以下问题:
1)使用时必须严格按照上述顺序。
2)多个样式之间用空格分隔,且font-size/line-height必须作为一对用/分隔。
3)font-size和font-family必须指定,其他样式不指定将采用默认样式显示。
基本语法如下:
![](https://epubservercos.yuewen.com/B78585/16948916704924306/epubprivate/OEBPS/Images/978-7-111-60090-9-Part02-32.jpg?sign=1738843573-YmZLdkGUNG864GUDJ5KxNDBA85LQ8r2w-0-6bc42e21c04eb972f77718005083c09e)
2.字号
(1)font-weight:设置字体粗细
可选属性值:bold加粗、lighter细体或者填写100~900的数字(其中400为正常,700为加粗)。
(2)font-size:设置字体大小
属性值通常为**px或**%(其中百分比代表浏览器默认字体大小的百分比,绝大部分浏览器默认为16px)。
3.字体颜色
(1)color:设置字体颜色
属性值有3种表达方式。
1)直接写颜色的英文名字:red、green、blue等。
2)十六进制写法:#FFFFFF,#后每位可选值为数字0~9以及英文的a~f,每两位表示一种颜色,分别对应红绿蓝的比例(最常用,推荐)。
3)rgb写法:
rgb(0~255,0~255,0~255)
rgba(0~255,0~255,0~255,0~1)第4位数表示透明度,0表示全透明,1表示不透明。
(2)opacity:设置透明度
属性值为0~1的数字。
注意:使用opacity时当前元素以及子元素均会透明;而使用rgba调整时,只会使当前元素透明,不会改变子元素透明度。
代码示例如下:
![](https://epubservercos.yuewen.com/B78585/16948916704924306/epubprivate/OEBPS/Images/978-7-111-60090-9-Part02-33.jpg?sign=1738843573-AKkiAp28Zih20H95eXaYru2w0xAEx9zh-0-c15ee25a70944f0133cd752403ae9b69)
6.1.2 文本属性
1.line-height
设置行高,属性值表达方式有以下3种。
1)像素单位,如48px。
2)纯数值,表示正常行高的倍数。
3)百分数,表示正常行高的百分数。
line-height有一个典型应用,就是可以调整元素中文本垂直居中,设置方式为让控件的height等于控件的line-height。
代码示例如下:
height:100px;
line-height:100px; /*设置行高等于高度,则当前元素中文字垂直居中*/
2.text-align
设置块级元素中文字的水平对齐方式,属性值有left、center、right。
代码示例如下:
![](https://epubservercos.yuewen.com/B78585/16948916704924306/epubprivate/OEBPS/Images/978-7-111-60090-9-Part02-34.jpg?sign=1738843573-mWw9JPjXjzBJLtFpubJPzLybxgLqJLxd-0-d4c9cd53a89bf4b8d5000ef93632f025)
![](https://epubservercos.yuewen.com/B78585/16948916704924306/epubprivate/OEBPS/Images/978-7-111-60090-9-Part02-35.jpg?sign=1738843573-w3U1PTL5TO3ZuSYYdvDSqtejJvbpGndR-0-d1d29b746da23bd4e88bf01914afe89f)
代码运行效果如图6-2所示。
![](https://epubservercos.yuewen.com/B78585/16948916704924306/epubprivate/OEBPS/Images/978-7-111-60090-9-Part02-36.jpg?sign=1738843573-rkqMeXvj22FGypy4kl7dzpjRorHqlP98-0-afed2f41076fb96c6cda51a853d4dee0)
图6-2 文字对齐方式效果
3.letter-spacing
设置字符间距,即字与字之间的间距,属性值通常为**px。
4.text-decoration
文本修饰属性,常用属性值有四个,分别为下画线underline、删除线line-through、上画线overline、不做修饰none。
代码示例如下:
![](https://epubservercos.yuewen.com/B78585/16948916704924306/epubprivate/OEBPS/Images/978-7-111-60090-9-Part02-37.jpg?sign=1738843573-m4qFjv5vJnuTeKPf5sJMthorhkXmhnIw-0-10a7bfbc71b31f354be84e0addfbd3c1)
代码运行效果如图6-3所示。
![](https://epubservercos.yuewen.com/B78585/16948916704924306/epubprivate/OEBPS/Images/978-7-111-60090-9-Part02-39.jpg?sign=1738843573-LT6KjhlqnyKIwSwBwyXr44J0DwWd7wpP-0-75f6be6a00aa149f3727fd76dbb7a6a1)
图6-3 文本修饰效果
5.overflow(overflow-x和overflow-y)
控制超出范围文本的显示方式,常用属性值有以下三个。
1)auto:根据文字多少自动显示滚动条。
2)scroll:始终显示滚动条。
3)hidden:超出范围文本隐藏,可以通过overflow-x和overflow-y分别设置水平垂直方向的隐藏。
注意:这个属性已经在第4章中进行详细讲解,此处不再赘述。
6.text-overflow
设置多余文字的显示方式,常用属性值有两个。
1)clip:裁剪文本;
2)ellipsis:使用省略号代替多余文字。
7.white-space
设置元素内的空白符怎样处理。常见属性值如下:
1)normal:默认,空白会被浏览器忽略。
2)nowrap:设置中文行末不断行显示。
3)pre:空白会被浏览器保留。作用类似HTML中的<pre>标签。
【重点】如何让每行多余文字显示省略号?
1)white-space:nowrap;如果是中文,需设置行末不断行。
2)overflow:hidden;设置控件超出范围隐藏。
3)text-overflow:ellipsis;设置多余文本省略号显示。
8.text-shadow
文本阴影,有4个属性值。
1)水平阴影距离:必写,数值越大,阴影右移。
2)垂直阴影距离:必写,数值越大,阴影下移。
3)阴影模糊距离:可写,数值越大,阴影越模糊。默认为0,不模糊。
4)阴影颜色:可写,默认为黑色。
代码示例如下:
![](https://epubservercos.yuewen.com/B78585/16948916704924306/epubprivate/OEBPS/Images/978-7-111-60090-9-Part02-40.jpg?sign=1738843573-51GKhBdQWli6KqOY0wcZx2ijLFQVKt7D-0-17b59cb02bb32fe9eaf90d2701dbafed)
代码运行效果如图6-4所示。
![](https://epubservercos.yuewen.com/B78585/16948916704924306/epubprivate/OEBPS/Images/978-7-111-60090-9-Part02-41.jpg?sign=1738843573-3vgHoGptEZCMk1NzXARUr8rGeHjXM5IL-0-28269c0b5f72faf893ac45e8dbaecd90)
图6-4 文字阴影效果
这里还需要补充,文本阴影可以同时设置多个阴影,每个阴影效果之间以逗号分隔即可。例如,将上述阴影代码改为下述语句:
![](https://epubservercos.yuewen.com/B78585/16948916704924306/epubprivate/OEBPS/Images/978-7-111-60090-9-Part02-42.jpg?sign=1738843573-afGpP4XMv4mUL9sSUUIWWn7v8LqSYzg2-0-ab9837d3a3bfda2b5b8ab0f3e78349b6)
代码运行效果如图6-5所示。
![](https://epubservercos.yuewen.com/B78585/16948916704924306/epubprivate/OEBPS/Images/978-7-111-60090-9-Part02-43.jpg?sign=1738843573-QP9ULTNRAZ6XdtFakHt6OmPcxDPsPOVE-0-02189b2c8e0c0fab47bd3ad558f0c1fc)
图6-5 多个文字阴影效果
9.text-indent
首行缩进,可以使用像素值调整段落文字的首行缩进大小。
代码示例如下:
text-indent:32px;//首行缩进32px,默认字体大小16px的情况下,将首行缩进两个字
10.text-stroke
设置文字描边,需要注意的是text-stroke只能在webkit内核浏览器中使用,所以必须使用“-webkit-”前缀,共接收两个属性值分别为描边的粗细,描边的颜色。
代码示例如下:
![](https://epubservercos.yuewen.com/B78585/16948916704924306/epubprivate/OEBPS/Images/978-7-111-60090-9-Part02-44.jpg?sign=1738843573-gmBNBASU5dE2nzWfCYRMqPjXHDs6cRqk-0-b69b9d0f35afc3d39a8fabc94421f351)
代码运行效果如图6-6所示。
![](https://epubservercos.yuewen.com/B78585/16948916704924306/epubprivate/OEBPS/Images/978-7-111-60090-9-Part02-45.jpg?sign=1738843573-4pRy5XOrJtVvzbq4OL1nZUhsoKlNNqQb-0-9dddf54321813b14c1b339a2745e7341)
图6-6 文字描边效果