4.5盒子阴影
推荐网站:模板之家 vue-element-admin 飞冰(阿里)
5浮动
5.1标准文档流
块级元素:独占一行
h1~h6 p div 列表
行内元素:不独占一行
span a img strong ...
行内元素可以 包含在块级元素中,反之,则不可以
5.2 display
?
1.这个也是一种实现行内元素排列的方式,但是我们很多情况都是用float
5.3float
1.左右浮动float
div{
margin: 10px;
padding: 5px;
}
#father {
border: 1px #000 solid;
}
.layer01{
border: 1px #F00 dashed;
display: inline-block;
float: left;
clear: both;
}
.layer02{
border: 1px #00F dashed;
display: inline-block;
float: right;
clear: both;
}
.layer03{
border: 1px #060 dashed;
display: inline-block;
float:right;
clear: both;
}
.layer04{
border: 1px #666 dashed;
font-size: 12px;
line-height: 23px;
display: inline-block;
float: right;
clear: both;
?
}
?
5.4父级边框塌陷的问题
clear:
/*
clear:right; 右侧不允许有浮动元素
clear:left;左侧不允许有浮动元素
clear:both;两侧不允许有浮动元素
clear:none;可以浮动
?
*/
解决方案:
1.增加父级元素的高度
#father {
border: 1px #000 solid;
height: 2800px;
}
2.增加一个空的div 标签,清楚浮动
.clear{
clear: both;
margin: 0;
padding: 0;
}
3.overflow
在父级元素中增加一个overflow:hidden (里面没有高度是被内容元素所覆盖的,最后的高度是根据内容元素来的)
4.父类中添加一个伪类:after
#father:after{
content: ‘‘;
display: block;
clear: both;
?
}
小结:
1.浮动元素后面增加空div
简单,代码中尽量避免空div
2.设置父元素的高度
简单,元素假设有了固定的高度,就会被限制
3.overflow
简单,下拉的一些场景避免使用
4.父类中添加一个伪类:after(推荐使用)
写法稍微复杂一点,但是没有副作用,推荐使用
5.5对比
display:
方向不可以控制
float:
浮动起来的话会脱离标准文档流,所以要解决父级边框塌陷的问题
6定位
默认情况:
6.1 相对定位
相对定位:position :relative;
相对于原来的位置,进行指定的偏移,相对定位的话,它任然在标准文档流中,原来的位置会被保留。
top:-20px;
left: 20px;
bottom: -20px;
right: 20px;
练习
6.2绝对定位
定位:基于xxx定位,上下左右
1.没有父级元素定位的前提下,相对于浏览器定位
2.假设父级元素存在定位,我们通常会相对于父级元素进行偏移
3.在父级元素范围内移动
相对于父级或浏览器的位置,进行指定的偏移,绝对定位的话,它不在标准文档流中,原来的位置不会被保留。
6.3固定定位fixed
6.4 z-index
图层
z-index:默认是0,最高无限
opacity: 0.3;背景透明度
#content{
width: 1000px;
padding: 0px;
margin: 0px;
overflow: hidden;
font-size: 12px;
line-height: 25px;
border: 1px #000 solid;
}
ul,li{
padding: 0px;
margin: 0px;
/*去标题的小黑点*/
list-style: none;
?
}
/*父级元素相对对位 子级元素可以进行绝对定位了*/
#content ul{
position: relative;
?
?
}
.tipText,.tipBg{
position: absolute;
width: 1000px;
height: 25px;
top: 770px;
}
.tipText{
color: white;
/*z-index: 999;*/
}
.tipBg{
background: #000;
/*opacity: 0.3;!*背景透明度*!*/
filter: opacity(0.2);
?
}