*简介
CSS是层叠样式表的简称,是一种标记语言。
主要用于设置HTML页面中的文本内容,图片外形以及版面的布局和外观显示样式。
使用场景:美化网页,布局页面
最大价值:由HTML专注去做结构呈现,样式交给CSS,即结构(HTML)与样式(CSS)相分离。
CSS语法规范
CSS规则由两个主要的部分构成,选择器以及一条或多条声明。
例:
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
p{
color: red;
font-size: 12px;
}
</style>
</head>
<body>
<p>一行字</p>
</body>
</html>
效果:
注意:
1.选择器是用于指定CSS样式的HTML标签,花括号内是对该对象设置的具体样式。
2.属性和属性值以“键值对”的形式出现。
3.属性是对指定对象设置的样式属性,例如字体大小,文本颜色等。
4.属性和属性值之间用英文":“分开。
5.多个“键值对”之间用英文”;"进行区分。
CSS代码风格
样式格式书写:
(1)紧凑格式
h3 {color: deeppink;font-size: 20px; }
(2)展开格式
h3 {
color: deeppink;font-size: 20px;
}
建议使用展开格式
样式大小写风格:
(1)小写风格
h3 {
color: deeppink;font-size: 20px;
}
(2)大写风格
H3 {
COLOR: RED;
}
建议使用小写风格
空格规范
- 属性值前面,冒号后面,保留一个空格
- 选择器(标签)和大括号中间保留空格
*CSS基础选择器
作用
选择器就是根据需求把不同的标签选出来
分类
1.基础选择器:
- 基础选择器是由单个选择器组成的
- 基础选择器又包括:标签选择器、类选择器、id选择器和通配符选择器。
2.复合选择器:
标题选择器
语法
标签名{
属性1:属性值1;
属性2:属性值2;
属性3:属性值3;
}
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
div{
color: aquamarine;
font-size: 20px;
}
</style>
</head>
<body>
<p>一行字</p>
<p>一行字</p>
<p>一行字</p>
<div>yihangzi</div>
<div>yihangzi</div>
<div>yihangzi</div>
</body>
</html>
效果
作用
标签选择器可以把某一类标签全部选择出来,比如所有的<div>
标签和所有的<span>
标签。
优点
能快速为页面中同种类型的标签统一设置样式
缺点
不能设计差异化设计,只能选择当前的全部标签
类选择器
如果想要差异化选择不同的标签,单独选一个或者某几个标签,可以使用类选择器。
语法:
样式点定义
结构类调用
.类名{
属性1:属性值1;
...
}
结构要用class属性来调用class类
<div class='red'>变红色</div>
注意:
- 类选择器使用"."进行标识,后面紧跟类名(自定义)。
- 可以理解为给这个标签取一个名字,来表示。
- 长名称或词组可以使用中横线来为选择器命名。
- 不要使用纯数字、中文等命名,尽量使用英文字母来表示。
- 命名要有意义,尽量使别人一眼就知道这个类名的目的。
案例:利用选择器画盒子
代码
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
.red{
width: 100px;
height: 100px;
background-color: red;
}
.green{
width: 100px;
height: 100px;
background-color: green;
}
</style>
</head>
<body>
<div class="red">红色</div>
<div class="green">绿色</div>
<div class="red">红色</div>
</body>
</html>
效果
类选择器-多类名
我们可以给一个标签指定多个类名,从而达到更多的目的。
- 使用方式
<div class="red font20">亚瑟</div>
(1)在标签class属性中写多个类名
(2)多个类名中间必须用空格分开
(3)这个标签就可以分别具有这些类名的样式
- 使用场景
(1)可以把一些标签元素相同的样式(共同的部分)放到一个类里面。
(2)这些标签都可以调用这个公共的类,然后再调用自己独有的类。
(3)从而节省CSS代码,统一修改也方便。
id选择器
语法
#id名{
属性1:属性值1;
...
}
例:
#nav{
color:red;
}
注意:
id属性只能在每一个HTML文档中出现一次。
与类选择器的区别:
(1)类选择器好比一个人的名字,一个人可以有多个名字,同时一个名字可以被多个人使用。
(2)id选择器好比人的身份证号码,全中国是唯一的,不得重复。
(3)id选择器和类选择器最大的不同在于使用次数上。
(4)类选择器在修改样式中使用的最多,id选择器一般用于页面唯一性的元素上,经常和JavaScript搭配使用。
通配符选择器
在CSS中,通配符选择器使用"*"定义,它表示选取页面中所有的元素(标签)。
语法:
*{
属性1:属性值1;
...
}
(1)通配符选择器不需要调用,自动就给所有的元素使用样式。
(2)特殊情况下才使用
例:
*{
margin:0;
padding:0;
}
*CSS字体属性
字体设置
CSS使用font-family属性定义文本的字体系列。
p{
font-family: 'Microsoft YaHei';
}
div{
font-family: Arial, Helvetica, sans-serif;
}
- 各个字体之间必须使用英文状态下的逗号隔开。
- 一般情况下,如果有空格隔开的多个单词组成的字体,加引号。
- 尽量使用系统自带的字体,保证任何用户的浏览器中都能正确显示。
- 多种字体:第一种字体缺失时使用下一种字体。
字体大小
例:
p{
font-size:20px;
}
- px(像素)大小是我们网页的最常用的单位。
- 谷歌浏览器默认的文字大小为16px。
- 不同浏览器可能默认显示的文字字号大小不一致,我们尽量给一个明确值大小,不要默认大小。
- 可以给body指定整个页面文字的大小。
- 标题标签比较特殊,需要单独指定文字大小。
字体粗细
CSS通过font-weight属性设置字体粗细
例:
p {
font-weight: bold;
}
属性值 | 描述 |
---|---|
normal | 默认的(不加粗) |
bold | 定义粗体(加粗的) |
100-900 | 400等同于normal,而700等同于bold,注意这个数字后面不跟单位 |
文字样式
CSS使用font-style设置文本的风格。
p {
font-style: normal;
}
属性值 | 作用 |
---|---|
normal | 默认值,浏览器会显示标准的字体样式font-style:normal; |
italic | 浏览器会显示斜体的字体样式 |
注意: 平时我们很少给文字加斜体,反而要给斜体标签(em,i)改为不倾斜字体。
字体复合属性
字体属性可以把以上文字样式综合来写,这样可以更节约代码:
div{
/*font-size: 20px;
font-family: Arial, Helvetica, sans-serif;
font-weight: 400;
font-style: normal;*/
/*font: font-style font-weight font-size font-family;*/
font: italic 700 16px 'Microsoft yahei';
}
font: font-style font-weight font-size font-family;
- 使用font属性时,必须按上面语法格式中的顺序书写,不能更换顺序,并且各个属性间以空格隔开。
- 不需要设置的属性可以省略(取默认值),但必须保留font-size和font-family属性,否则font属性将不起作用。
*文本属性
CSS Text(文本)属性可定义文本的外观,比如文本的颜色,对齐文本,装饰文本,文本缩进,行间距等。
文本颜色
color属性用于定义文本的颜色。
div{
color: red;
}
表示表示 | 属性值 |
---|---|
预定义的颜色值 | red,pink等 |
十六进制 | #FF0000等 |
RGB代码 | rgb(255,0,0)等 |
对齐文本
text-align属性用于设置元素内文本内容的水平对齐方式。
div{
text-align: center;
}
属性值 | 解释 |
---|---|
left | 左对齐(默认值) |
right | 右对齐 |
center | 居中对齐 |
装饰文本
text-decoration属性规定添加到文本的修饰。可以给文本添加下划线,删除线,上划线等。
div{
text-decoration: underline;
}
属性值 | 描述 |
---|---|
none | 默认,没有装饰线 |
underline | 下划线(常用) |
overline | 上划线(几乎不用) |
line-through | 删除线(不常用) |
文本缩进
text-indent属性用来指定文本的第一行的缩进,通常是将段落的首行缩进。
p{
text-indebt:2em;
}
em为一个相对单位,就是当前元素1个文字的大小,如果当前元素没有设置大小,则会按照父元素的一个文字大小。
行间距
line-height用于设置行间的距离(行高),可以控制文字行与行之间的距离。
p {
line-height:26px;
}
行间距=上间距+文本高度+下间距
*CSS的引入方式
CSS的三种样式表
按照CSS样式书写的位置或者引入的方式,CSS样式表可以分为三大类:
- 行内样式表(行内式)
- 内部样式表(嵌入式)
- 外部样式表(链接式)
内部样式表
将所有的CSS代码抽取出来,单独放到一个<style>
标签中
<style>
div{
color: red;
font-size: 12px;
}
</style>
<style>
标签理论上可以放在HTML文档的任何地方,但一般会放在文档的<head>
标签中。- 通过此种方式,可以方便控制当前整个页面中的元素样式设置。
- 代码结构清晰,但是没有实现结构与样式完全分离
- 使用内部样式表设定CSS,通常也被称为嵌入式引入,这是我们练习时常用的方式。
行内样式表
行内样式表(内嵌样式表)是在元素标签内部的style属性中设定CSS样式。适合于修改简单样式。
<div style="color:red;font-size:12px;">白露未晞</div>
- style其实就是标签的属性
- 在双引号中间,写法要复合CSS规范
- 可以控制当前的标签设置样式
- 由于书写频繁,并且没有体现出结构与样式相分离的思想,所以不推荐大量使用,只有对当前元素添加简单样式的时候,可以考虑使用
- 使用行内样式表设定CSS,通常也被称为行内式引入
外部样式表
实际开发都是使用外部样式表,适合于样式比较多的情况,核心是:样式单独写道CSS文件中,之后把CSS文件引入到HTML页面中使用。
引用外部样式表分为两步:
- 新建一个后缀名为.css的样式的文件,把所有代码都放入到此文件中。
- 在HTML页面中,使用
<link>
标签引入这个文件。
<link rel="styleheet" href="css文件路径">
属性 | 作用 |
---|---|
rel | 定义当前文档与被链接文档之间的关系,这里需要指定styleheet,表示被链接的文档是一个样式表文件 |
href | 定义 所链接外部样式表文件的URL,可以是相对路径,也可以是绝对路径 |
使用外部样式表设定CSS,通常也被称为外链式或链接式引入,这种开发方法是开发中常用的方式。