css grid实现九宫格布局

常见的九宫格布局可以使用flex布局实现,但是flex布局有个致命的缺陷,比如3行3列的布局,当第不足3个元素的时候,元素依然是平局平铺的,这样就不满足九宫格的效果,这种情况,使用grid布局可以轻松搞定这个问题

html布局

复制代码
<div class="layout">
    <div class="item">1</div>
    <div class="item">2</div>
    <div class="item">3</div>

    <div class="item">3</div>
    <div class="item">5</div>
    <div class="item">6</div>

    <div class="item">7</div>
    <div class="item">8</div>
</div>

css样式

复制代码
<style>
    .layout{
        display: grid;
        /*fr是山哥单位,如果想一行展示4个元素,那么填上4个fr即可*/
        grid-template-columns: 1fr 1fr 1fr;
        gap: 10px;
        margin-left: 10%;
        width: 80%;
        height: 80vh;
    }

    .item{
        background: chartreuse;
        display: flex;
        /*控制元素上下居中*/
        justify-content: center;
        /*控制元素左右居中*/
        align-items: center;
    }

</style>

效果

相关推荐
twl2 小时前
OpenClaw 深度技术解析
前端
崔庆才丨静觅2 小时前
比官方便宜一半以上!Grok API 申请及使用
前端
星光不问赶路人2 小时前
vue3使用jsx语法详解
前端·vue.js
天蓝色的鱼鱼2 小时前
shadcn/ui,给你一个真正可控的UI组件库
前端
布列瑟农的星空3 小时前
前端都能看懂的Rust入门教程(三)——控制流语句
前端·后端·rust
Mr Xu_3 小时前
Vue 3 中计算属性的最佳实践:提升可读性、可维护性与性能
前端·javascript
jerrywus3 小时前
我写了个 Claude Code Skill,再也不用手动切图传 COS 了
前端·agent·claude
玖月晴空3 小时前
探索关于Spec 和Skills 的一些实战运用-Kiro篇
前端·aigc·代码规范
子兮曰3 小时前
深入理解滑块验证码:那些你不知道的防破解机制
前端·javascript·canvas
会一丢丢蝶泳的咻狗3 小时前
Sass实现,蛇形流动布局
前端·css