CSS网格布局

 前言

        希望元素按照网格的方式进行布局,最简单的方式就是利用网格布局,如图所示:

网格布局

设置网格布局的核心属性:

① display: grid

    设置容器为网格布局容器(如果希望设置行内的网格容器,可以设置display: inline-grid)

② grid-gap: 30px;

    设置网格之间的距离为30px(也可以通过grid-row-gap单独设置行间距grid-column-gap单独设置列间距

③ grid-template-columns: 1fr 1fr 1fr

    设置网格共三列,每列网格宽度平均分配(宽度分为3份,每列占一份)

使用grid-template-columns时网格元素尽量不要设置宽度,而是平均分配

关于长度单位fr(fraction)的使用,请参考:CSS长度单位fr介绍使用

④ grid-template-rows: 1fr 1fr 1fr

    设置网格共三行每行网格高度平均分配(高度分为3份,每列占一份)

在使用grid-template-rows时网格元素尽量不要设置高度,而是平均分配

    上面重复的三个1fr可以用函数repeat(3, 1fr)代替,第一个参数为重复次数,第二个为重复数据

    一般网格列模板grid-template-columns和网格行模板grid-template-rows只设置一个,如果同时设置就会固定网格的行数和列数

⑤ grid-row: 1 / 2

    设置格子元素的起始线为第1条横线(可通过grid-row-start: 1;单独设置),结束线为第2条横线(可通过grid-row-end: 2;单独设置)

网格的分割线如下(黑色为横向分割线,红色为纵向分割线):

 

如果将网格1的横向起始线设为1,横向结束线设为3,那么效果图如下:

 

参考代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <h1>网格布局</h1>
    <div class="root">
        <div class="box box1">网格1</div>
        <div class="box">网格2</div>
        <div class="box">网格3</div>
        <div class="box">网格4</div>
        <div class="box">网格5</div>
        <div class="box">网格6</div>
        <div class="box">网格7</div>
        <div class="box">网格8</div>
        <div class="box">网格9</div>
    </div>
</body>
<style>
    h1 {
        text-align: center;
        /* 设置字体间距 */
        letter-spacing: 26px;
    }
    .root {
        padding: 30px;
        position: relative;
        width: 60%;
        height: 700px;
        border: 3px solid #eee;
        border-radius: 20px;
        margin: 20px auto;
        box-shadow: 0 0 20px 10px #eee;

        /* 网格布局 */
        display: grid;
		/*	设置网格固定3列,每列宽度平均分配	*/
        grid-template-columns: repeat(3,1fr);
        /* 设置网格元素间隔为30px */
        grid-gap: 30px;
    }

 	.root .box1 {
        /*	设置横向起始分割线为第一条,横向结束分割线为第三条	*/
        grid-row: 1 / 3;
    }
    
    .root .box{
        background-color: #7fa2ad;
        border-radius: 10px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 24px;
        font-weight: 600;
        color: #eee;
    }
</style>
</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/904333.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

QT访问数据库:应用提示Driver not loaded

在QT中运行完全正确错误截图 解决办法1 我用的是MySQL。我把libmysql.dll复制到应用程序的目录下&#xff0c;即可正常访问数据库。 解决办法2 bool open_work_db() {QString info "support drivers:";for (int i0; i<QSqlDatabase::drivers().size(); i){inf…

Rust 力扣 - 1. 两数相加

文章目录 题目描述题解思路题解代码题目链接 题目描述 题解思路 我们使用一个全局的备忘录&#xff0c;然后我们遍历数组&#xff0c;如果当前元素在备忘录里面找到了&#xff0c;就返回备忘录里面记录的下标和当前下标记录&#xff0c;没找到就把当前元素匹配的元素和当前元素…

十六:Python学习笔记-- 爬虫(2)requests 模块详解

目录 安装 requests 模块 基本请求方法 GET 请求 POST 请求 PUT 请求 DELETE 请求 添加请求头&#xff1a; 处理查询参数&#xff1a; 文件上传&#xff1a; 常见响应状态码 访问超时 cookie的查询和设置 查询 Cookies 设置 Cookies 设置爬虫代理 小试牛刀 安装 …

1Panel应用商店开源软件累计下载突破200万次!

2024年10月23日&#xff0c;1Panel应用商店内开源软件累计下载突破200万次。 1Panel&#xff08;github.com/1Panel-dev/1Panel&#xff09;是一款现代化、开源的Linux服务器运维管理面板&#xff0c;它致力于通过开源的方式&#xff0c;帮助用户简化建站与运维管理流程。 为…

C语言 | Leetcode C语言题解之第517题超级洗衣机

题目&#xff1a; 题解&#xff1a; int findMinMoves(int* machines, int machinesSize){int sum0;for(int i0;i<machinesSize;i){summachines[i];}if(sum%machinesSize!0){return -1;}int psum/machinesSize;int ans0;int cur0;for(int i0;i<machinesSize;i){cur(mac…

JavaSE笔记3】面向对象高级

目录 拓1&#xff1a;私有方法的优点 拓2&#xff1a;静态方法的优点 拓3&#xff1a;类的五大成分 拓4&#xff1a;硬编码和软编码 一、static 1. 概念 2. 成员变量在内存中执行原理 3. 类变量(静态变量)的使用场景 4. 两种成员变量 5. 两种成员方法 6. 类方法的使用场景 7.…

动态规划 —— 路径问题-礼物的最大价值

1. 剑指offer-JZ47-路径问题-礼物的最大价值 题目链接&#xff1a; 礼物的最大价值_牛客题霸_牛客网https://www.nowcoder.com/practice/2237b401eb9347d282310fc1c3adb134?tpId265&tqId39288&ru/exam/oj 2. 算法原理 状态表示&#xff1a;以莫一个位置位置为结尾 d…

Unity自定义数组在Inspector窗口的显示方式

了解 单行高度:EditorGUIUtility.singleLineHeight获取 PropertyField 控件所需的高度:EditorGUI.GetPropertyHeight属性是否在Inspector窗口展开&#xff1a;SerializedProperty.isExpanded可重新排序列表类&#xff1a;ReorderableList绘制纯色矩形&#xff1a;EditorGUI.Dr…

聊聊Web3D 发展趋势

随着 Web 技术的不断演进&#xff0c;Web3D 正逐渐成为各行业数字化的重要方向。Web3D 是指在网页中展示 3D 内容的技术集合。近年来&#xff0c;由于 WebGL、WebGPU 等技术的发展&#xff0c;3D 内容已经能够直接在浏览器中渲染&#xff0c;为用户提供更加沉浸、互动的体验。以…

【AIGC】ChatGPT应用之道:如何打破『专家幻象』,提升AI协作质量

博客主页&#xff1a; [小ᶻZ࿆] 本文专栏: AIGC | ChatGPT 文章目录 &#x1f4af;前言&#x1f4af;ChatGPT的实际能力用户对ChatGPT的常见误解超越误解&#xff0c;合理设定期望总结 &#x1f4af;超越“专家”幻想设定合理的期望总结 &#x1f4af;提升人工智能协作质量…

Web3的去中心化社交网络:区块链技术如何改变互动方式

随着互联网技术的不断进步&#xff0c;社交网络正在经历一场深刻的变革。Web3&#xff0c;作为新一代互联网技术的代表&#xff0c;正通过区块链和去中心化理念改变着我们与他人互动的方式。传统的社交网络通常由大型公司控制&#xff0c;用户数据的集中化管理和隐私问题备受关…

计算机网络:网络层 —— IPv4 协议的表示方法及其编址方法

文章目录 IPv4IPv4的表示方法IPv4的编址方法分类编址A类地址B类地址C类地址可指派的地址数量一般不使用的特殊IPv4地址 划分子网编址子网掩码默认子网掩码 无分类编址方法地址掩码斜线记法无分类域间路由选择 CIDR IPv4 IPv4&#xff08;Internet Protocol version 4&#xff…

Amcor 如何借助 Liquid UI 实现SAP PM可靠性

背景介绍 安姆科是塑料行业的全球领军企业&#xff0c;该企业认识到 SAP 工厂维护&#xff08;SAP PM&#xff09;对于确保高效的维护管理的重要性。 在诸如制造业等高度依赖机械设备的行业中&#xff0c;SAP PM是一种通过数据驱动决策来最大限度减少停机时间、降低间接成本、…

玩转Docker | 使用Docker部署捕鱼网页小游戏

玩转Docker | 使用Docker部署捕鱼网页小游戏 一、项目介绍项目简介项目预览二、系统要求环境要求环境检查Docker版本检查检查操作系统版本三、部署捕鱼网页小游戏下载镜像创建容器检查容器状态下载项目内容查看服务监听端口安全设置四、访问捕鱼网页小游戏五、总结一、项目介绍…

没有对象来和我手撕红黑树吧

1. 红黑树的介绍 红黑树也是一种自平衡的二叉搜索树&#xff0c;在每一个节点增加了一个存储位来表示节点的颜色&#xff0c;可以是红色也可以是黑色&#xff0c;通过约束颜色来维持树的平衡&#xff0c;具有以下的性质&#xff1a; 每个节点不是红色就是黑色根节点为黑色如果…

怎么实现电脑控制100台手机,苹果手机群控系统不用越狱实现新突破

今天来给大家介绍一款软件——手机群控。 什么是手机群控&#xff1f;就是将多台手机同时连接至一台电脑&#xff0c;集中控制管理。 对于苹果iOS免越狱中控&#xff0c;此前一直是个难题。 毕竟iOS系统封闭性极强&#xff0c;且苹果官方限制了USB的传输类型&#xff0c;只允…

【网络面试篇】TCP与UDP类

目录 一、综述 1. TCP与UDP的概念 2. 特点 3. 区别 4. 对应的使用场景 二、补充 1. 基础概念 &#xff08;1&#xff09;面向连接 &#xff08;2&#xff09;可靠的 &#xff08;3&#xff09;字节流 2. 相关问题 &#xff08;1&#xff09;TCP 和 UDP 可以同时绑定…

web自动化测试平台开发之核心执行器

web自动化测试平台开发之核心执行器 一、如何从自动化框架到核心执行器二、核心执行器框架逻辑梳理三、核心执行器利用命令驱动执行 一、如何从自动化框架到核心执行器 脚本:底层用了三个内容:pythonpytestselenium&#xff0c;线性脚本&#xff0c;只是单纯的把功能测试用例转…

AI自媒体变现路径大盘点!建议收藏!

当下的我做为一人公司或者超级个体为目标的创业模式&#xff0c;无论是在写作、图文和短视频输出方面&#xff0c;我都是运用了N个AI工具来提升我的生产力。 这种创业模式就是一个人N个AI的模式&#xff0c;我们可以通过AI工具做提效来赚取差价&#xff0c;以时间复利来累计财…

Boost电路双闭环控制MATLAB仿真

一、Boost电路电流内环控制MATLAB仿真模型 1.MATLAB仿真模型 1.1.仿真模型图 因为要使用电流内环控制&#xff0c;相比较于开环控制中直接给定MOS开关的占空比&#xff0c;这里通过把电路的平均电流和一电流基准值相比较来控制MOS开关的占空比&#xff0c;因此称为闭环控制。…