CSS之定位方式

CSS的五种定位方式

定位方式:static、relative、absolute、fixed、sticky

  1. static: 元素不会以任何特殊的方式定位,始终以页面的正常流进行定位。
<style>
        .static {
            position: static;
            background-color: green;
            width: 200px;
        }
</style>
<body>
    <div class="static">这个盒子的定位方式</div>
</body>

效果图:
在这里插入图片描述

  1. relative: 元素相对于其正常位置进行定位
<style>
        div {
            border: 1px solid green;
        }
        div.static {
            position: relative;
            background-color: red;
            width: 250px;
            left: 50px;
        }
</style>
<body>
    <div>
        <div class="static">这个盒子的定位方式为relative</div>
    </div>
</body>

效果图:
在这里插入图片描述

  1. absolute: 元素相对于最近的定位祖先元素进行定位
<style>
        .relative {
            border: 1px solid green;
            width: 200px;
            height: 100px;
        }
        .absolute {
            border: 1px solid green;
            position: absolute;
            top: 50px;
            left: 20px;
        }
</style>
<body>
   <div class="relative">
       <div class="absolute">这个元素为absolute定位</div>
   </div>
</body>

效果图:
在这里插入图片描述

  1. fixed: 元素相对于视口进行定位,即使滚动页面,也始终位于同一位置
<style>
       .fixed {
           border: 1px solid green;
           width: 200px;
           height: 200px;
           position: fixed;
           top: 50px;
           left: 50px;
       }
       .scroll {
           height: 1000px;
       }
</style>
<body>
       <div class="fixed">这个元素为fixed定位</div>
       <div class="scroll"></div>
</body>

效果图:
在这里插入图片描述
注:页面已经拉到最底下了,元素仍然在相对于视口的位置

  1. sticky: 元素根据用户的滚动位置进行定位;根据滚定位置在相对(relative)和固定(fixed)之间切换
<style>
        .sticky {
            border: 1px solid green;
            width: 200px;
            height: 200px;
            position: sticky;
            top: 0px;
        }
        .scroll {
            height: 1000px;
        }
</style>
<body>
    <div>这是顶部的文字</div>
    <div class="sticky">这个元素为sticky定位</div>
<div class="scroll"></div>
</body>

效果图:
在这里插入图片描述
完。

文章供自身学习与巩固,若能帮到大家我也很开心。
如有不当和错误,望大家多指点,谢谢。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值