1.相对定位
在使用相对定位的时候,不论是否以移动,都保持原先文档流的位置,即仍然占据空间。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
.box{
width: 800px;
height: 200px;
background-color: aquamarine;
}
.item1,.item2,.item3,.item4,.item5{
border: 1px solid cornflowerblue;
width: 50px;
height: 50px;
float: left;
margin-left: 8px;
}
</style>
</head>
<body>
<div class="box">
<div class="box-contetnt">
<div class="item1">1</div>
<div class="item2">2</div>
<div class="item3">3</div>
<div class="item4">4</div>
</div>
<div class="item5">5</div>
</div>
</body>
</html>
给1添加相对定位的时候
.item1{
position: relative;
top: 20px;
}
光给外层1234的盒子left没有反应
当给盒子相对定位的时候,没有脱离文档流,并且还占据着原来的位置,因此5并不会再最前面去
.box-contetnt{
/* position: absolute; */
position: relative;
left: 400px;
}
.item1{
position: relative;
/* position: absolute; */
top: 20px;
}
2.绝对定位,脱离文档流,不会保持原来的位置
,因此不占据空间。(这个时候的定位如果父元素设置的绝对定位,那么子元素的相对定位的偏移是在父元素位置的基础上进行偏移的)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
.box{
width: 800px;
height: 200px;
background-color: aquamarine;
}
.item1,.item2,.item3,.item4,.item5{
border: 1px solid cornflowerblue;
width: 50px;
height: 50px;
float: left;
margin-left: 8px;
}
.box-contetnt{
position: absolute;
/* position: relative; */
left: 400px;
}
.item1{
position: relative;
/* position: absolute; */
top: 20px;
}
/* .item2{
position: relative;
left: 40px;
} */
</style>
</head>
<body>
<div class="box">
<div class="box-contetnt">
<div class="item1">1</div>
<div class="item2">2</div>
<div class="item3">3</div>
<div class="item4">4</div>
</div>
<div class="item5">5</div>
</div>
</body>
</html>