页面美化和布局控制。
一. 概念
Cascading Style Sheets 层叠样式表
- 层叠:多个样式可以作用在同一个html的元素上,同时生效
二. css的好处
- 功能强大
- 将内容展示和样式控制分离
1. 降低耦合度。解耦
2. 让分工协作更容易
3. 提高开发效率
三. css的使用
- 内联样式
* 在标签内使用style属性指定css代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>内联样式</title>
</head>
<body>
<div style="color:red;">Hello World</div>
</body>
</html>
- 内部样式
* 在head标签内,定义style标签,style标签的标签体内容就是css代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>内部样式</title>
<style>
div{
color:blue;
}
</style>
</head>
<body>
<div>Hello World</div>
</body>
</html>
- 外部样式
1. 定义css资源文件。
2. 在head标签内,定义link标签,引入外部的资源文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>外部样式</title>
<link rel="stylesheet" href="../css/a.css">
</head>
<body>
<div> Hello World </div>
<div> Hello World</div>
</body>
</html>
- 注意:
* 1,2,3种方式 css作用范围越来越大
* 1方式不常用,后期常用2,3
* 第3种格式可以写为:
<style>
@import "css/a.css";
</style>
四. css的语法
- 格式:
选择器 {
属性名1:属性值1;
属性名2:属性值2;
...
}
- 选择器:筛选具有相似特征的元素
- 注意:
- 每一对属性需要使用;隔开,最后一对属性可以不加;
演示:
- 每一对属性需要使用;隔开,最后一对属性可以不加;
五. 选择器
筛选具有相似特征的元素
- 基础选择器
- id选择器:选择具体的id属性值的元素.建议在一个html页面中id值唯一
* 语法:#id属性值{} - 元素选择器:选择具有相同标签名称的元素
* 语法: 标签名称{}
* 注意:id选择器优先级高于元素选择器 - 类选择器:选择具有相同的class属性值的元素。
* 语法:.class属性值{}
* 注意:类选择器选择器优先级高于元素选择器
演示:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>基础选择器</title>
<style>
#div1{
color:red;
}
div{
color:green;
}
.classdiv2{
color: blue;
}
</style>
</head>
<body>
<div1 > 私忆一秒钟 </div1>
<div> 私忆一秒钟 </div>
<p class="classdiv2">zcx</p>
</body>
</html>
- 扩展选择器:
-
选择所有元素:
* 语法: *{} -
并集选择器:
* 选择器1,选择器2{} -
子选择器:筛选选择器1元素下的选择器2元素
* 语法: 选择器1 选择器2{} -
父选择器:筛选选择器2的父元素选择器1
* 语法: 选择器1 > 选择器2{} -
属性选择器:选择元素名称,属性名=属性值的元素
* 语法: 元素名称[属性名=“属性值”]{} -
伪类选择器:选择一些元素具有的状态
* 语法: 元素:状态{}
* 如:
* 状态:
* link:初始化的状态
* visited:被访问过的状态
* active:正在访问状态
* hover:鼠标悬浮状态
演示:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>扩展选择器</title>
<style>
div p{
color:red;
}
div > p{
border : 1px solid;
}
input[type='text']{
border : 5px solid;
}
a:link{
color: green;
}
a:visited{
color: yellow;
}
a:active{
color: blue;
}
a:hover{
color: red;
}
</style>
</head>
<body>
<div>
<p>私忆</p>
</div>
<p>一秒钟</p>
<div>aaa</div>
<input type="text">
<input type="number">
<a href="www.baidu.com">超链接</a>
</body>
</html>
六. 属性
- 字体、文本
* font-size:字体大小
* color:文本颜色
* text-align:对其方式
* line-height:行高 - 背景
* background: - 边框
* border:设置边框,符合属性 - 尺寸
* width:宽度
* height:高度 - 盒子模型:控制布局
-
margin:外边距
-
padding:内边距
- 默认情况下内边距会影响整个盒子的大小
- box-sizing: border-box; 设置盒子的属性,让width和height就是最终盒子的大小
-
float:浮动
- left
- right
-