二十八定位(下)

Posted 上善若水

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二十八定位(下)相关的知识,希望对你有一定的参考价值。

一、定位

1.1、定位叠放次序 z-index

在使用定位布局时,可能会出现盒子重叠的情况。此时, 可以使用 z − i n d e x \\colorredz-index zindex来控制盒子的前后次序(z轴)

语法: z-index:1;

  • 数值可以是正整数、负整数或0,默认是 auto,数值越大,盒子越靠上。
  • 如果属性值相同,则按照书写顺序,后来居上。
  • 数字后面不能加单位
  • 只有定位的盒子才有z-index属性
<!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>
        .box 
            position: absolute;
            top: 0;
            left: 0;
            width: 200px;
            height: 200px;
        
        .xiongda 
            background-color: red;
            z-index: 1;
        
        .xionger 
            background-color: green;
            left: 50px;
            top: 50px;
            z-index: 2;
        
        .qiangge 
            background-color:blue;
            left: 100px;
            top: 100px;
        
    </style>
</head>
<body>
    <div class="box xiongda">熊大</div>
    <div class="box xionger">熊二</div>
    <div class="box qiangge">光头强</div>
</body>
</html>

1.2、定位的拓展

绝对定位的盒子居中
加了定位的盒子不能通过margin:0 auto水平居中,但是可以通过以下计算方法实现水平和垂直居中。
①:left:50%;让盒子的左侧移动到父级元素的水平中心位置。
②:margin-left:-100px;让盒子向左移动自身宽度的一半。

<!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>
        .box 
            position: absolute;
            /* 1. left 走 50%  父容器宽度的一半 */
            left: 50%;
            /* 2. margin 负值 往左边走 自己盒子宽度的一半 */
            margin-left: -100px;
            top: 50%;
            margin-top: -100px;
            width: 200px;
            height: 200px;
            background-color: pink;
            /* margin: auto; */
        
    </style>
</head>
<body>
    <div class="box"></div>
</body>
</html>

定位特殊特性
绝对定位和固定定位也和浮动类似。
1.行内元素添加绝对或者固定定位,可以直接设置高度和宽度。
2.块级元素添加绝对或者固定定位,如果不给宽度或者高度,默认大小是内容的大小。

<!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>
        span 
            position: absolute;
            top: 300px;
            width: 200px;
            height: 150px;
            background-color: pink;
        
        div 
            position: absolute;
            background-color: skyblue;
        
    </style>
</head>
<body>
    <span>123</span>

    <div>abcd</div>
</body>
</html>

脱标的盒子不会触发外边距塌陷
浮动元素,绝对定位(固定定位)元素的都不会触发外边距合并的问题。
绝对定位(固定定位)会完全压住盒子
浮动元素不同,只会压住它下面 标准流的盒子,但是不会压住下面标准流盒子里面的文字(图片)
但是绝对定位(固定定位)会压住下面标准流所有的内容。
浮动之所以不会压住文字,因为浮动产生的目的最初是为了做文字环绕效果的。文字会围绕浮动元素。

以上是关于二十八定位(下)的主要内容,如果未能解决你的问题,请参考以下文章

MATLAB点云处理(二十八):基于格网法与平面拟合的道路点云与非道路点云分割

MATLAB点云处理(二十八):基于格网法与平面拟合的道路点云与非道路点云分割

每日算法&面试题,大厂特训二十八天——第二十八天(数组)

第二十八课 再论智能指针(下)

每日算法&面试题,大厂特训二十八天——第二十七天(函数)

每日算法&面试题,大厂特训二十八天——第二十三天(树)