4 个回答

可以参考下这个页面里最下面的代码。

新手上路,请多包涵

定位+位移。。。。。。。。。。。。。。。。。。。。

样式:

.warp {
    width: 300px;
    height: 320px;
    display: flex;
    margin: 100px auto 0;
}

.column {
    width: 100px;
    height: 100%;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
}

.block {
    width: 65px;
    height: 100px;
    position: relative;
    border-radius: 10px;
    background-color: red;
}

.block::before {
    left: 0;
    content: "";
    width: inherit;
    height: inherit;
    position: absolute;
    border-radius: 10px;
    background-color: red;
    transform: rotate(60deg);
}

.block::after {
    left: 0;
    content: "";
    width: inherit;
    height: inherit;
    position: absolute;
    border-radius: 10px;
    background-color: red;
    transform: rotate(\-60deg);
}

.mb {
    margin-bottom: 10px;
}

HTML:

<div class="warp">
    <div class="column">
        <div class="block block-1 mb"></div>
        <div class="block block-2"></div>
    </div>
    <div class="column">
        <div class="block block-3 mb"></div>
        <div class="block block-4 mb"></div>
        <div class="block block-5"></div>
    </div>
    <div class="column">
        <div class="block block-6 mb"></div>
        <div class="block block-7"></div>
    </div>
</div>

效果:
demo.png
当然还需要根据题主的实际需求去对一些数值进行微调。

clip-path或者mask绘制六边形图片 之后定位吧~~~~

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题