CSS之定位-相对定位

定位:定位是一种更高级的布局手段
通过定位可以将元素摆放到任意位置
使用position属性设置定位

可选值:
static:默认值(未开启定位)
relative:开启元素的相对定位
absolute:开启元素的绝对定位
fixed:开启元素的固定定位
sticky:开启元素的粘滞定位

相对定位:当元素的属性position设置为relative时,则元素开启了相对定位(相对于原先位置)
相对定位的特点:
1.元素开启相对定位后,如果不设置偏移量元素不会发生任何变化
2.相对定位是参照元素在文档流中的位置进行定位的
3.相对定位会提升元素的层级
4.相对定位不会使元素脱离文档流(如果是块元素的话,原来的位置还保留)
5.相对定位不会改变元素的性质,块还是块,行内还是行内

偏移量(offset):
当元素开启相对定位后,可以通过设置偏移量移动元素的位置

top:
定位元素和定位位置上边的距离
bottom:
定位元素和定位位置下边的距离

垂直方向的定位位置由top和bottom设置
通常情况下,只会选其中一个
top值越大,定位元素越往下移动
bottom值越大,定位元素越往上移动

left:
定位元素和定位位置左边的距离
right:
定位元素和定位位置左边的距离

水平方向的定位位置由left和right设置
通常情况下,只会选其中一个
left值越大,定位元素越往右移动
right值越大,定位元素越往左移动
Demo:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>定位</title>
    <style>
    .box1{
        width:200px;
        height:200px;
        background-color:seagreen;
        
    }

    .box2{
        width:200px;
        height:200px;
        background-color:darkorange;
        /* 开启定位 */
        position: relative;
        /* 设置偏移量 */
        left:100px;
        /* bottom:200px;*/
        top:-200px;

    }

    .box3{
        width:200px;
        height:200px;
        background-color: brown;
    }
    </style>
</head>
<body>
    <div class="box1"></div>
    <div class="box2"></div>
    <div class="box3"></div>
</body>
</html>
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: CSS中的绝对定位相对定位是用于控制元素位置的两种常用方法。它们的区别如下: 1. 相对定位 相对定位是指相对于元素原本所在的位置进行定位。它通过使用 `top`, `right`, `bottom` 和 `left` 属性来控制元素的位置。例如,我们可以使用以下代码将一个元素相对于其原本的位置向下移动20个像素: ```css position: relative; top: 20px; ``` 2. 绝对定位 绝对定位是指相对于最近的已定位祖先元素(即指定了 `position` 属性且不为 `static` 的元素)进行定位。如果没有已定位的祖先元素,则相对于文档的 `body` 元素进行定位。和相对定位一样,我们可以使用 `top`, `right`, `bottom` 和 `left` 属性来控制元素的位置。例如,我们可以使用以下代码将一个元素相对于其最近的已定位祖先元素向右移动50个像素: ```css position: absolute; right: 50px; ``` 总的来说,相对定位和绝对定位都是用于控制元素位置的方法,但它们的定位方式有所不同。相对定位是相对于元素原本的位置进行定位,而绝对定位是相对于最近的已定位祖先元素进行定位。 ### 回答2: CSS绝对定位相对定位是一种CSS布局技术,用于控制元素在网页中的位置。 相对定位是相对于元素原来所在的位置进行定位。通过将元素的position属性设置为relative,元素将会相对于自己原来所在的位置进行移动,移动后的位置由top、right、bottom和left属性来控制。相对定位不会改变文档流中其他元素的位置,所以当一个元素被相对定位后,其他元素仍然按照原来的顺序和位置排列。 绝对定位则是相对于最近的非静态定位的祖先元素(如果不存在则相对于文档的body元素)进行定位。通过将元素的position属性设置为absolute,元素将会脱离文档流,不再占据原来的位置。绝对定位的位置也是由top、right、bottom和left属性来控制。绝对定位会改变其他元素的位置,当一个元素被绝对定位后,其他元素会填补改元素脱离文档流后的空白区域。 相对定位和绝对定位的特点和用途不同。相对定位用于微调元素的位置,通常与其他定位方式(如静态定位或浮动定位)一起使用,达到更灵活的布局效果。绝对定位则更适合创建自定义的布局,可以把元素摆放在页面的任何位置。无论是相对定位还是绝对定位,都可以通过配合使用z-index属性来调整元素的层次顺序,实现不同元素的遮盖效果。 综上所述,CSS绝对定位相对定位都是布局技术,使用不同的定位原点来实现元素的定位相对定位相对于元素原来的位置进行定位,而绝对定位则相对于最近的非静态定位的祖先元素进行定位
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值