文章目录
CSS:页面美化和布局控制
1. 概念
概念: Cascading Style Sheets 层叠样式表。
层叠:多个样式可以作用在同一个html的元素上,同时生效。
2. 好处
好处:
1. 功能强大
2. 将内容展示和样式控制分离
降低耦合度。解耦
让分工协作更容易
提高开发效率
3. CSS的使用:CSS与html结合方式
3.1 内联样式
在标签内使用style属性指定css代码
如:<div style="color:red;">hello css</div>
3.2 内部样式
在head标签内,定义style标签,style标签的标签体内容就是css代码
如:
<style>
div{
color:blue;
}
</style>
<div>hello css</div>
3.3 外部样式
- 定义css资源文件。
- 在head标签内,定义link标签,引入外部的资源文件。
如:
a.css文件:
div{
color:green;
}
<link rel="stylesheet" href="css/a.css">
<div>hello css</div>
<div>hello css</div>
注意:
1,2,3种方式 css作用范围越来越大。
1方式不常用,后期常用2,3
3种格式可以写为:
<style>
@import "css/a.css";
</style>
3.4 css语法
格式:
选择器 {
属性名1:属性值1;
属性名2:属性值2;
...
}
选择器:筛选具有相似特征的元素
注意:
每一对属性需要使用;隔开,最后一对属性可以不加;
3.5 选择器:筛选具有相似特征的元素
3.5.1 基础选择器
- id选择器:选择具体的id属性值的元素.建议在一个html页面中id值唯一
语法:#id属性值{}
- 元素选择器:选择具有相同标签名称的元素
语法: 标签名称{
}
注意:id选择器优先级高于元素选择器
- 类选择器:选择具有相同的class属性值的元素。
语法:.class属性值{
}
注意:类选择器选择器优先级高于元素选择器
3.5.2 扩展选择器
选择所有元素:
语法: {
}
- 并集选择器:
选择器1,选择器2{
}
- 子选择器:筛选选择器1元素下的选择器2元素
语法: 选择器1 选择器2{
}
- 父选择器:筛选选择器2的父元素选择器1
语法: 选择器1 > 选择器2{
}
- 属性选择器:选择元素名称,属性名=属性值的元素
语法: 元素名称[属性名="属性值"]{
}
- 伪类选择器:选择一些元素具有的状态
语法: 元素:状态{
}
如: <a>
状态:
link:初始化的状态
visited:被访问过的状态
active:正在访问状态
hover:鼠标悬浮状态
3.6 属性
- 字体、文本
font-size:字体大小
color:文本颜色
text-align:对其方式
line-height:行高
- 背景
background:
- 边框
border:设置边框,符合属性
- 尺寸
width:宽度
height:高度
- 盒子模型:控制布局
margin:外边距
padding:内边距
默认情况下内边距会影响整个盒子的大小
box-sizing: border-box; 设置盒子的属性,让width和height就是最终盒子的大小
float:浮动
left
right
4. CSS浮动和盒子模型
因为div都是独自占一行,如果想要几个div占一行就要使用浮动。
-
浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。
-
由于浮动框不在文档的普通流中,所以文档的普通流中的块框表现得就像浮动框不存在一样。第二句话解释:普通框(在普通流中),浮动框在浮动时,会重合普通框,就表现浮动框(红色是浮动框)好像不存在。下图可以解释(红色是向左浮动框)
框向右浮动
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>CSS浮动</title>
<style>
#one{
border: 3px solid red;
width:300px;
height:150px;
/*第一个框向左浮动*/
float: right;
}
#two{
border: 3px solid yellow;
width:300px;
height:150px;
}
#three{
border: 3px solid green;
width:300px;
height:150px;
}
</style>
</head>
<body>
<div id="one"></div>
<div id="two"></div>
<div id="three"></div>
</body>
</html>
页面展示
红色框向右浮动
一个页面的宽度最长是1350px如果第三个浮动框(每个浮动框是500px),放不下会自动浮动到下一行如果第一个浮动框高度比第二个浮动框高度要大,就会出现下图的情况。
清除浮动
如果想要浮动框,和普通框不重合,那么需要清除浮动。
清除浮动的方法:就是在浮动框下面创建一个div,并标记id使用css选择器加上属性clear属性值是both(在左右两侧不允许浮动框元素),left(在左侧不允许出现浮动元素)、righ(在右侧不允许出现浮动元素)、none(默认值允许浮动元素出现在两侧)。
<!DOCTYPE html>
<html>