某老牌大厂手写笔试,关于弹性盒子布局

52 阅读1分钟

题目介绍

46162af2c3adc30bef918c6dc21e4db.jpg

我当时突然就麻住了,忘记了主轴方向那个属性。太菜了 回家之后写了出来,难度不大,但是考察了对css弹性盒子的属性掌握.废话不多说,开始简单写写 底层逻辑就是浮动结合弹性盒子

第一种情况 正常弹性盒子正向排列

image.png

<!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>
        .box {
            width: 500px;
            height: 100px;
            display: flex;
        }

        .box div {
            width: 50px;
            height: 50px;
            border: 1px solid red;
            background-color: aqua;
        }
    </style>
</head>

<body>
    <div class="box">
        <div>A</div>
        <div>B</div>
        <div>C</div>
        <div>D</div>
        <div>E</div>
    </div>
</body>

</html>

第二种情况 正常弹性盒子最右侧反向排列

image.png

<!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>
        .box {
            width: 500px;
            height: 100px;
            display: flex;
            float: right;
            flex-direction: row-reverse;
        }

        .box div {
            width: 50px;
            height: 50px;
            border: 1px solid red;
            background-color: aqua;
        }
    </style>
</head>

<body>
    <div class="box">
        <div>A</div>
        <div>B</div>
        <div>C</div>
        <div>D</div>
        <div>E</div>
    </div>
</body>

</html>

第三种情况 正常弹性盒子纵向排列最左侧正向排列

image.png

<!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>
        .box {
            width: 500px;
            height: 250px;
            display: flex;
            /* float: left; */
            flex-direction: column;
        }

        .box div {
            width: 50px;
            height: 50px;
            border: 1px solid red;
            background-color: aqua;
        }
    </style>
</head>

<body>
    <div class="box">
        <div>A</div>
        <div>B</div>
        <div>C</div>
        <div>D</div>
        <div>E</div>
    </div>
</body>

</html>

第四种情况 正常弹性盒子纵向排列最右侧反向排列

image.png

<!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>
        .box {
            /* width: 500px; */
            height: 250px;
            display: flex;
            float: right;
            flex-direction: column-reverse;
        }

        .box div {
            width: 50px;
            height: 50px;
            border: 1px solid red;
            background-color: aqua;
        }
    </style>
</head>

<body>
    <div class="box">
        <div>A</div>
        <div>B</div>
        <div>C</div>
        <div>D</div>
        <div>E</div>
    </div>
</body>

</html>

结尾 虽然这个需求不难,但是对盒子模型,长宽高等细节方面还是有一些认知在里面的,我们用手写的话,可能还会存在很多的问题在里面,所以大家还是要注重基础知识,不然就会像我一样,简单的东西当场打脸。耻辱