相对定位:
relative:相对于原来位置移动,元素设置此属性之后仍然处在文档流中,不影响其他元素的布局
原占用的位置,会保留,显示默认高于静态定位
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
/*
相对定位:position: relative;
原占用的位置,会保留
显示默认高于静态定位
相对于自己本身原本位置定位
*/
#d1,#d2{
width: 100px;
height: 100px;
background: red;
}
#d1{
position: relative;
top: 50px;
}
#d2{
/*只有当d2也是相对定位时z-index才有用*/
background: green;
z-index: 1;
}
</style>
</head>
<body>
<div id="d1">123</div>
<div id="d2">123</div>
</body>
</html>
绝对定位:
absolute:元素会脱离文档流,如果设置偏移量,会影响其他元素的位置定位,原位置不会预留
且绝对定位是相对于上一个非静态定位的祖先元素定位,显示会高于静态定位的内容
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
/*绝对定位position: absolute;
特点,显示会高于静态定位的内容
非静态定位,才能使用样式,top,left ,right...
原位置不会预留
且绝对定位是相对于上一个非静态定位的祖先元素定位
*/
#d1,#d2{
width: 100px;
height: 100px;
background: red;
position: absolute;
top: 0;
/*opacity: .5;*/
}
#d2{
background: green;
top: 20px;
left: 20px;
}
#d1{
/*值越高,显示在上面*/
z-index: 1;
}
</style>
</head>
<body>
<p>Hello zyw</p>
<div id="d1">123</div>
<p>Hello zyw</p>
<div id="d2">123</div>
</body>
</html>