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>

效果

相关推荐
OpenTiny社区几秒前
🎉 TinySearchBox 重磅更新:支持 Vue2,一次满足我的所有需求!
前端·javascript·vue.js
@大迁世界几秒前
面了 100+ 次前端后,我被一个 React 问题当场“打回原形”
前端·javascript·react.js·前端框架·ecmascript
苏打水com12 分钟前
第十九篇:Day55-57 前端工程化进阶——从“手动低效”到“工程化高效”(对标职场“规模化”需求)
前端·css·vue·html
小六*^____^*12 分钟前
虚拟列表学习
前端·javascript·学习
JIngJaneIL19 分钟前
基于java+ vue学生选课系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
十月不到底23 分钟前
vue3手机端列表加载组件
前端·vue
岁月宁静25 分钟前
LangGraph 技术详解:基于图结构的 AI 工作流与多智能体编排框架
前端·python·langchain
岁月宁静27 分钟前
LangChain 技术栈全解析:从模型编排到 RAG 实战
前端·python·langchain
1024肥宅32 分钟前
工程化工具类:实现高效的工具函数库
前端·javascript·面试
Nick_zcy35 分钟前
基于Vue和Python的羽毛球拍智能推荐系统, 从“不会选羽毛球拍”到“选对拍”的一站式小工具
前端·vue.js·python·算法·推荐算法