相对定位是相对于元素在正常流中的位置进行定位,它不会改变元素在正常流中的位置,而是通过指定上、下、左、右属性来移动元素的位置。
绝对定位是相对于最近的已定位父元素或根元素进行定位,它会脱离正常流,并且不占据原来的位置,通过指定上、下、左、右属性来定位元素。
相对定位和绝对定位的区别
1.相对定位会保留原来的位置,而绝对定位不保留原来的位置。
2.相对定位时相对于自己进行偏移
3.绝对位移是相对与父元素进行偏移,并且这个父元素要设置position属性,从最近的父元素开始寻找一直找到设置了position属性的元素为止
固定定位是相对于浏览器窗口进行定位,它会始终保持位置不变,不随滚动条的移动而改变位置,通过指定上、下、左、右属性来定位元素。
1.固定定位小技巧
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>固定定位小技巧</title>
<style>
.w {
width: 800px;
height: 1200px;
background-color: pink;
margin: 0 auto;
}
.fixed {
position: fixed;
/* 1.走浏览器宽度的一半 */
left: 50%;
/* 2.利用margin走版心盒子宽度的一半距离 */
margin-left: 405px;
width: 50px;
height: 150px;
background-color: skyblue;
}
</style>
</head>
<body>
<div class="fixed"></div>
<div class="w"> 版心盒子 800像素</div>
</body>
</html>
在使用这三种定位方式时,可以通过调整定位属性来实现元素的准确定位和布局。