XM的小窝


 

【记录】HTML-定位

定位

定位模式分类:

定位模式 是否脱标 移动位置 是否常用
static 相对定位 不能使用边偏移 很少
relative 绝对定位 否(占有位置) 相对于自身位置移动 常用
absolute 绝对定位 是(不占有位置) 带有定位的父级 常用
fixed 固定定位 是(不占有位置) 浏览器可视区 常用
sticky 粘性定位 否(占有位置) 浏览器可视区 比较少

P.S:相对定位和粘性定位都会占用原来的位置,如下图:

相对定位不会脱标

相对定位和绝对定位的使用技巧:采用 子绝父相 的定位方法

子绝父相:在父盒子内有子盒子时,子盒子通常会以他的最近一级的父亲为准定位
父盒子只需要加上相对/绝对定位即可.否则子盒子会以浏览器为准进行定位

固定定位的使用技巧:

如果需要将盒子和靠版心盒子固定对齐,则需要按照 公式 使用定位:
定位算法:左/右移动50%到版心,再使用margin移动版心的1/2的距离即可
例如 left:50%; margin 100px;

相对定位和绝对定位的代码表示

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /* 相对定位会占有原来的位置,所以父级通常使用相对定位 */

        .father {
            width: 300px;
            height: 300px;
            background-color: skyblue;
            position: relative;
            /* 如果此处使用绝对定位,则会脱标,下方红色模块会填补上面的空白 */
            /* position: absolute; */
            top: 100px;
            left: 100px;
        }
        /* 绝对定位是不会占用原来的位置的,和浮动是类似的,但是区别于浮动,不影响其他位置的布局 */

        .son {
            width: 100px;
            height: 100px;
            background-color: pink;
            /*子绝父相*/
            position: absolute;
            top: 10px;
            left: 10px;
        }

        .other {
            width: 300px;
            height: 300px;
            background-color: red;
        }
    </style>
</head>

<body>
    <div class="father">
        <div class="son"></div>
    </div>
    <div class="other"></div>
</body>

</html>
点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注