web前端9--定位
-定位
CSS中的定位是一种用于控制元素在页面中的布局的属性。通过定位,可以精确地确定元素在页面中的位置。
1、相对定位
!!!一般用于微调
CSS中的一种定位方式,通过设置元素的`position`属性为`relative`来实现。相对定位使元素相对于其正常位置进行偏移,但不会影响其在文档流中的位置。
- 元素的移动是相对于它在文档流中的正常位置。偏移的方向由`top`、`right`、`bottom`、`left`属性决定。
- 相对定位的元素不会脱离文档流,它仍然占据着在文档流中的位置。
- 相对定位不会对其他元素造成影响,它的移动不会引起周围元素的重排。
- 不影响元素本身的任何特性
```css
.box1{
position: relative;
top: 10px;
left: 100px;
width: 100px;
height: 100px;
background-color: aqua;
}
```
2、绝对定位
通过设置元素的`position`属性为`absolute`来实现。
1、绝对定位使元素相对于其最近的已定位祖先元素进行定位,如果没有已定位的祖先元素,则相对于视口进行定位。
2、在绝大数情况下,子元素的绝对定位都是相对于父元素进行定位
<!-- 子绝父相 -->
```css
.box2{
position: absolute;
top: 50px;
left: 50px;
width: 100px;
height: 100px;
background-color: green;
}
```
3、 绝对定位的元素脱离了文档流,不再占据标准流中的位置。
绝对定位的元素导致父元素的高度塌陷,父元素设置高度
4、绝对定位的元素可以手动设置宽度和高度,
使其具有特定的尺寸。使元素转换为块元素
5、 使用绝对定位 元素再父级中居中的方法
//定位到视口中心
```css
.box{
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
margin: auto;
}
```
3、固定定位
position: fixed;
1、固定定位是CSS中的一种定位方式,它使元素相对于浏览器视口进行定位。
2、固定定位的元素会随着用户滚动页面而保持固定的位置,不受页面滚动的影响。
```css
.a{
position: fixed;
top: 200px;
right: 0px;
width: 200px;
height: 200px;
background-color: aqua;
}
```
- 元素相对于浏览器视口进行定位,不受文档流中其他元素的影响。
- 元素会固定在指定的位置。
- 通过设置`top`、`right`、`bottom`、`left`属性,可以手动控制元素的位置。
4、z-index
元素发生堆叠时可以使用z-index属性调整
已定位元素的显示位置,值越大元素越靠上:
z-index: -1;
5、应用案例 爱心:在web前端笔记8中
web前端8--浮动-CSDN博客