聊聊定位之间的小奥秘~

代码和效果图

  1. 代码
xml 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>定位布局</title>
    <style>
        #app{
            width: 200px;
            height: 200px;
            background-color: #26dc8a;
         }/*id权重更高 */
         .box{
            width: 50px;
            height: 50px;
            background-color: #11110d;
         }
    </style>
</head>
<body>
    <div id="app" class="app">
        <div class="box"></div>
    </div>
</body>
</html>

效果图

  1. 现在我们要实现如下效果:

分析 :要实现上述效果我们就要用到定位 了,首先要给box 容器添加一个绝对定位 ,并设置rightbottom 为0,注意,还要为app 容器添加一个相对定位 ,因为如果不添加的话box 容器就会以父容器body 为榜样了,就无法实现上图在app容器的右下方了,再设置app 容器left为100px,app容器以自身页面为榜样。

变化的代码

xml 复制代码
    <style>
        #app{
            width: 200px;
            height: 200px;
            background-color: #26dc8a;
            /*相对定位,设置后,才可以作为box的参考系,若没加,box则以body为参考系*/
            position: relative;
            left: 100px;
         }/*id权重更高 */
         .box{
            width: 50px;
            height: 50px;
            background-color: #11110d;
            /*绝对定位,一个容器只有设置了一个定位后,才可使用top,bottom...*/
            position: absolute; 
            right: 0;
            bottom: 0;
         }
    </style>
  1. 还可以不用给box容器添加绝对定位,通过给box 容器添加一个相对定位 ,并设置bottomright为150px也可以实现相同的效果。

变化的代码

css 复制代码
 .box{
            width: 50px;
            height: 50px;
            background-color: #11110d;
            /*绝对定位,一个容器只有设置了一个定位后,才可使用top,bottom...*/

            position: relative;
            left: 150px;
            top: 150px;
         }
  1. 实现效果图

分析 :想要实现上面的效果图只需要给box 容器添加一个固定定位 ,并设置bottom为0;

变化的代码

css 复制代码
.box{
            width: 50px;
            height: 50px;
            background-color: #11110d;
            /*绝对定位,一个容器只有设置了一个定位后,才可使用top,bottom...*/

            position: fixed;
            /* 固定定位,相对于屏幕 */
            right: 0;
         }

总结

  1. position: absolute; 绝对定位,它需要找榜样(会相互对于榜样来定位自己);
  2. position: relative; 相对定位,可以作为别人的榜样,也相对于自己本身的页面位置来定位;
  3. position: fixed; 固定定位,相对于浏览器的屏幕来定位自己;
相关推荐
暖木生晖10 分钟前
引入资源即针对于不同的屏幕尺寸,调用不同的css文件
前端·css·媒体查询
袁煦丞43 分钟前
DS file文件管家远程自由:cpolar内网穿透实验室第492个成功挑战
前端·程序员·远程工作
用户0137412843744 分钟前
九个鲜为人知却极具威力的 CSS 功能:提升前端开发体验的隐藏技巧
前端
永远不打烊1 小时前
Window环境 WebRTC demo 运行
前端
风舞1 小时前
一文搞定JS所有类型判断最佳实践
前端·javascript
coding随想1 小时前
哈希值变化的魔法:深入解析HTML5 hashchange事件的奥秘与实战
前端
一树山茶1 小时前
uniapp在微信小程序中实现 SSE进行通信
前端·javascript
coding随想1 小时前
小程序中的pageshow与pagehide事件,HTML5中也有?揭秘浏览器往返缓存(BFCache)
前端
萌萌哒草头将军1 小时前
Rspack 1.5 版本更新速览!🚀🚀🚀
前端·javascript·vue.js
阿卡不卡1 小时前
基于多场景的通用单位转换功能实现
前端·javascript