目录
3、浮动布局:通过float属性设置(left none right)
6、弹性盒子:是由弹性容器(Flexible或者Flexbox)和弹性元素(Flex-item)组成
6.4 align-items:设置的弹性容器中元素在侧轴(纵轴)的对齐方式
6.5 justify-content:设置的弹性容器中元素在主轴(横轴)的对齐方式
6.6 align-content:修改了flex-flow 的行为,类似于align-items,它是对齐的弹性线
1、盒子布局:使用border(边框,上左下右)
属性:
none | 定义无边框 |
hidden | 与none相同,但应用表时除外,对于表,hidden用于解决边框冲突 |
dotted | 定义点状边框(在大多浏览器中表现为实线) |
dashed | 定义虚线边框(在大多浏览器中表现为实线) |
soild | 实线 |
padding:内边距(内容距离边框的距离)上左下右
margin:外边距(边框距离页面的距离)
2、元素分类
块级元素:独占一行,div p hn hr 标签可以设置宽度和高度
行类元素:不会自动换行a span 标签不可以设置宽度和高度
display:实现块级元素和行类元素的互换
属性:
none | 元素不显示 |
block | 元素显示为块级元素,此元素前后有换行符 |
inline | 默认值,元素显示为内联元素,元素前后无换行符 |
注:css中隐藏元素的方式:
- display:none
- width:0,height:0
<!DOCTYPE html>
<html lang="en">
<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>
.one{
width: 100px;
height: 100px;
border: 1px solid black;
background-color: red;
display:inline ;
}
.two{
width: 100px;
height: 100px;
border: 1px solid black;
background-color: blue;
display:block ;
}
.three{
width: 100px;
height: 100px;
border: 1px solid black;
background-color: pink;
display: block;
}
</style>
</head>
<body>
<div class="one">这是第一个div</div>
<div class="two">这是第二个div</div>
<div class="three">这是第三个div</div>
</body>
</html>
3、浮动布局:通过float属性设置(left none right)
注:如果浮动取值为left,会对后面的元素产生影响
消除浮动:通过clear属性
none | 默认,允许两边都可以浮动 |
left | 不允许左边的浮动 |
right | 不允许右边的浮动 |
both | 不允许两测有浮动 |
4、定位布局
position:设置对象的定位方式
属性:
static | 静态定位 |
absolute | 绝对定位:将对象从文本中分离出来,设置left top right bottom这四个方向去设置相较于父级对象的相对定位,如果不存在这样的父级对象,那么父级是body |
relative | 相对定位:对象不从文档流中分离出来,设置left top right bottom这四个方向去设置 相较于自身的相对定位 |
<!DOCTYPE html>
<html lang="en">
<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>
.main{
width: 600px;
height: 600px;
border: 1px solid black;
}
.box1{
width: 200px;
height: 200px;
border: 1px solid black;
background-color: red;
position: absolute;
left: 300px;
}
.box2{
width: 200px;
height: 200px;
border: 1px solid black;
background-color: green;
/* position: relative;
left: 200px; */
}
.box3{
width: 200px;
height: 200px;
border: 1px solid black;
background-color: pink;
}
</style>
</head>
<body>
<div class="main">
<div class="box1">这是第一个div</div>
<div class="box2">这是第二个div</div>
<div class="box3">这是第三个div</div>
</div>
</body>
5、其他属性
5.1 overflow:设置对象内容超过指定的高度或者宽度的时候如果管理它的内容
visible | 默认值 不剪切内容也不添加滚动条 |
auto | 在必需时对象才会被裁剪或者添加滚动条 |
hidden | 不显示超过对象尺寸的内容(会被隐藏) |
scroll | 总显示滚动条 |
5.2 zoom:设置或者检索对象的缩放比例
normal | 默认值 显示的是对象的实际尺寸 |
number | 百分比 /无符号的浮点数 浮点数为1.0相当于100%相当于取值为normal |
6、弹性盒子:是由弹性容器(Flexible或者Flexbox)和弹性元素(Flex-item)组成
设置弹性容器是通过display属性进行设置
display:flex或则inline-flex
注:一个弹性容器可以包含多个弹性元素
6.1常见属性
- flex- direction ------- 指的是弹性容器中子元素的排列方式
- flex-wrap ------ 指的是弹性容器中子元素超出父容器时是否换行
- flex-flow ----flex- direction 和flex-wrap 的简写
- align-items --- 设置的弹性容器中元素在侧轴(纵轴)的对齐方式
- justify-content ------ 设置的弹性容器中元素在主轴(横轴)的对齐方式
- align-content-------修改了flex-flow 的行为,类似于align-items,它是对齐的弹性线
6.2 flex- direction
row | 左对齐(横向的从左到右排列),默认值· |
row-reverse | 反向的横向排列(右对齐),从后往前排,最后一项排在最前面 |
column | 纵向排列 |
column-reverse | 反向纵向排列,从下往上排 |
6.3 flex-wrap
nowrap | 默认值,规定弹性元素不会换行 |
wrap | 弹性元素在需要的时候会换行 |
wrap-reverse | 会换行,但是是反方向 |
6.4 align-items:设置的弹性容器中元素在侧轴(纵轴)的对齐方式
stretch | 默认值 项目被拉伸以适合容器 |
center | 项目位于容器中央 |
flex-start | 项目位于容器开头 |
flex-end | 项目位于容器末端 |
baseline | 项目被定位到容器的基线 |
6.5 justify-content:设置的弹性容器中元素在主轴(横轴)的对齐方式
flex-start | 默认值 项目位于容器开头 |
flex-end | 项目位于容器末端 |
center | 项目位于容器中央 |
space-between | 项目在行与行之间有间隙 |
space-around | 项目在行之前、行之间、行之后有间隙 |
6.6 align-content:修改了flex-flow 的行为,类似于align-items,它是对齐的弹性线
stretch | 默认值 行拉伸以占据剩余空间 |
center | 朝着弹性容器的中央对行打包 |
flex-start | 朝着弹性容器的开头对行打包 |
flex-end | 朝着弹性容器的结尾对行打包 |
space-between | 行均匀分布在弹性容器中 |
space-around | 行均匀分布在弹性容器中 ,两边各占一半 |