css 布局之 4种 position 布局讲解
在CSS中,position
属性用于指定元素的定位方式。以下是position
属性的四种常见值及其说明:
static
:这是position
属性的默认值。它表示元素没有被定位,元素出现在正常的流中。relative
:相对定位。相对于其正常位置进行定位。可以通过top
、right
、bottom
、left
属性设置元素相对于其正常位置的偏移量。absolute
:绝对定位。相对于最近的非static
定位的祖先元素进行定位。如果没有这样的元素,则相对于文档体(body)进行定位。fixed
:固定定位。相对于浏览器窗口进行定位,并且元素的位置不随页面滚动而变化。
实例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Position Layout Example</title>
<style>
.static-box {
position: static; /* 默认位置 */
width: 100px;
height: 100px;
background-color: lightblue;
}
.relative-box {
position: relative; /* 相对定位 */
width: 100px;
height: 100px;
background-color: lightcoral;
top: 50px; /* 向下移动50px */
left: 50px; /* 向右移动50px */
}
.absolute-box {
position: absolute; /* 绝对定位 */
width: 100px;
height: 100px;
background-color: lightgreen;
top: 20px; /* 相对于最近的祖先元素向下移动20px */
right: 20px; /* 相对于最近的祖先元素向右移动20px */
}
.fixed-box {
position: fixed; /* 固定定位 */
width: 100px;
height: 100px;
background-color: lightgray;
bottom: 0; /* 距离窗口底部0px */
right: 0; /* 距离窗口右侧0px */
}
</style>
</head>
<body>
<div class="static-box">Static Box</div>
<div class="relative-box">Relative Box</div>
<div class="absolute-box">Absolute Box</div>
<div class="fixed-box">Fixed Box</div>
</body>
</html>
在这个例子中,.static-box
是默认的静态定位,.relative-box
相对于其正常位置有了偏移,.absolute-box
相对于最近的父容器有了偏移,而.fixed-box
则是固定在浏览器窗口的底部右侧。
评论已关闭