前端网格布局grid

news2024/9/28 3:31:21

网格布局

<style>
.container {
    border:none;
    display: grid;
    height: 600px;
    grid-template-columns: 200px 1fr;   /*两列,第一列200px,第二列自适应*/
    grid-template-rows: 50px 1fr 30px;  /*三行:第一行:50px,第二行:自适应,第三行:30px*/
    row-gap: 3px;  /*行间距*/
    column-gap: 3px;  /*列间距*/
    grid-template-areas: "toubu toubu"
                         "daohang main"
                         "daohang yejiao";
}
.item {
    box-shadow: 0 0 5px #CCCCCC;
    padding:5px;
    text-align: center;
}
.header {
    grid-area: toubu;   /*grid-area属性用于在网格布局中设置网格项目的大小和位置。 此属性还用于为网格项设置名称。*/
}
.nav{
    grid-area: daohang;
}

.footer {
    grid-area: yejiao;
}

.main {
    grid-area: main
}
 
</style>

<div class="container">
    <div class="item header">头部</div>
    <div class="item nav">导航</div>
    <div class="item footer">页脚</div>
    <div class="item main">主体部分</div>
</div>

在这里插入图片描述

.div01 {
    display: grid;
    grid-template-columns: repeat(4, 100px);
    grid-template-rows: repeat(4, 100px);
    grid-template-areas:
            "a . . . "
            "b b . . "
            "c . d d "
            ". . d d ";
    grid-gap: 20px;
}
 
.div02 {
    grid-area: a;
}
 
.div03 {
    grid-area: b;
}
 
.div04 {
    grid-area: c;
}
 
.div05 {
    grid-area: d;
}
 
.item {
    border: 2px solid red;
}

在这里插入图片描述

.div01 {
    display: grid;
    grid-template-columns: repeat(4, 100px);
    grid-template-rows: repeat(4, 100px);
    grid-template-areas:
            "a . . . "
            "b b . . "
            "c . d d "
            ". . d d ";
}

先来看div01,也就是大的容器

display为grid,也就是grid布局

grid-template-columns也就是几列,我这边是4列, 所以需要写100px, 100px, 100px, 100px

这样写太麻烦,可以直接写成 repeat(4,100px)

grid-template-rows是几行,道理是一样的

然后是grid-template-areas,

这个是用来表示布局如何分配,如何分布,就像一个草图一样

"a . . . "
"b b . . "
"c . d d "
". . d d ";
比如这里,第一行就第一个格子表示a,其他都是没有,所以用点.来表示

右下角用了4个格子来表示d,所以d占用了4个格子

.div02 {
    grid-area: a;
}
 
.div03 {
    grid-area: b;
}
 
.div04 {
    grid-area: c;
}
 
.div05 {
    grid-area: d;
}
 
.item {
    border: 2px solid red;
}

然后子项目,也就是容器里面的方块,我们用grid-area,
grid布局

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C语言每日一题】——猜名次

【C语言每日一题】——猜名次&#x1f60e;前言&#x1f64c;猜名次&#x1f64c;解题思路分享&#xff1a;&#x1f60d;解题源码分享&#xff1a;&#x1f60d;总结撒花&#x1f49e;&#x1f60e;博客昵称&#xff1a;博客小梦 &#x1f60a;最喜欢的座右铭&#xff1a;全神…

大数据之-Nifi-应用场景2-2_设置putfile处理器自动创建目标文件夹_以及存在重复文件时自动覆盖---大数据之Nifi工作笔记0006

上一节我们留了两个问题,一个是,如果我们没有创建putfile要写入的目标文件夹,会报错吗? 可以看到我们putfile目标文件夹是上面这个目录 我们来试一试,如果目标文件夹不存在,putfile处理器会自动创建吗 首先我们删除这个target目标文件夹 然后我们进入cd source目录,源文件夹目…

echart在微信小程序的使用

echart在微信小程序的使用 echarts不显示在微信小程序 <!-- 微信小程序的echart的使用 --> <view class"container"><ec-canvas id"mychart-dom-bar" canvas-id"mychart-bar" ec"{{ ec }}"></ec-canvas> &l…

SVNH数据(.mat格式)转为图像(.png)matlab代码

一、获取SVNH数据数据集集地址-http://ufldl.stanford.edu/housenumbers/提供两种格式的数据&#xff1a;1.Format 1&#xff0c;图像形式&#xff0c;压缩包2.Format 2&#xff0c; .mat格式的数据10 classes, 1 for each digit. Digit 1 has label 1, 9 has label 9 and 0 ha…

Git在日常使用过程中的常用命令

文章目录Git在日常使用过程中的常用命令写在前面1. 创建本地仓库2. 将本地文件添加到暂存区3. 将本地文件从暂存区撤销4. 将修改提交到本地仓库5. clone远程版本库到本地。6. 为本地版本库添加一个远程仓库7. 推送到远程仓库8. 将远程分支内容拉取到本地Git在日常使用过程中的常…

Docker下快速搭建RabbitMQ单例及集群

引子生命在于折腾&#xff0c;为上数据实时化用到了消息传送的内容&#xff0c;当时也和总公司人员商量选型&#xff0c;kafka不能区分分公司就暂定用了RbtMQ刚好个人也在研究容器及分布式部署相关内容就在docker上实践单机 docker&#xff08;要想快 先看问题 避免踩坑&#x…

Linux 简介

Linux 内核最初只是由芬兰人林纳斯托瓦兹&#xff08;Linus Torvalds&#xff09;在赫尔辛基大学上学时出于个人爱好而编写的。 Linux 是一套免费使用和自由传播的类 Unix 操作系统&#xff0c;是一个基于 POSIX 和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。 …

[安装]ThinkPad X250加装固态硬盘教程

方案&#xff1a;保留原有的机械硬盘&#xff0c;再加装一个固态硬盘作为系统盘。由于X250没有光驱&#xff0c;这样就无法使用第二个2.5寸的硬盘。还好&#xff0c;X250留有一个M.2接口&#xff0c;这样&#xff0c;就可以使用NGFF M.2接口的固态硬盘。不过&#xff0c;这种接…

如何在 Python 中验证用户输入

要验证用户输入&#xff1a; 使用 while 循环进行迭代&#xff0c;直到提供的输入值有效。检查输入值在每次迭代中是否有效。如果该值有效&#xff0c;则跳出 while 循环。 # ✅ 验证用户输入的是否是整数num 0while True:try:num int(input("Enter an integer 1-10: …

python练习

项目场景一&#xff1a; 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢&#xff1f; 问题描述 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶…

一文讲明TCP网络编程、Socket套接字的讲解使用、网络编程案例

文章目录1 Socket讲解2 基于Socket的TCP编程3 客户端Socket的工作过程包含以下四个基本的步骤3.1 客户端创建Socket对象4 服务器程序的工作过程包含以下四个基本的步骤&#xff1a;4.1 服务器建立ServerSocket对象5 案例实现 客户端和服务端通信5.1 代码实现5.2 实现结果6 更多…

cgroup基础介绍

一项新概念的产生&#xff0c;必然有其原因&#xff0c;cgroup也不例外&#xff0c;最初由谷歌工程师Paul Menage和Rohit Seth提出【1】&#xff1a;因为计算机硬件能力越来越强大&#xff0c;为了提高机器的使用效率&#xff0c;可以在同一台机器上运行不同运算模型的工作。开…

安卓---第5章 数据存储---保存QQ账号与密码

文章目录案例1: 使用文件存储 保存QQ账号与密码功能描述saveqq_1.xmlFileSaveQQ.javasaveqq_1案例2 使用SP保存QQ账号与密码功能描述SPSaveQQ.java其他代码1. 数据存储方式2. 文件存储将数据存入文件中内部存储&#xff1a;外部存储&#xff1a;从文件中读取数据读取内部存储读…

信息系统服务管理

一、信息系统服务业及发展二、信息系统工程监理的概念及发展三、信息系统运行维护的概念和发展 IT服务管理&#xff08;ITSM) 四、信息技术服务管理的标准和框架 IT服务标准体系&#xff08;ITSS&#xff09; 一、信息系统服务业及发展 总结&#xff1a;前景很好 二、信息系…

计网传输层协议:UDP和TCP

文章目录一. 应用层和传输层的联系二. UDP协议三. TCP协议1. TCP报头介绍2. TCP实现可靠传输的核心机制2.1 确认应答2.2 超时重传3. 连接管理(三次握手, 四次挥手)3.1 建立连接(三次握手)3.2 断开连接(四次挥手)4. 滑动窗口5. 流量控制6.拥塞控制7. 延时应答8. 捎带应答9. 面向…

5.InfluxDB定时任务与报警

定时任务 InfluxDB的定时任务本质上是定时执行一个Flux脚本,一般回先查询数据再聚合修改最后可以写回另外一个bucket中 常用的定时任务使用场景 降采样 : 如果数据的输入频率特别快比如IOT温度计设备每秒往InfluxDB写入一条数据会有大量的数据写入一个InfluxDB的bucket (因为…

kubernetes教程 --Pod详解

Pod详解 每个Pod中都可以包含一个或者多个容器&#xff0c;这些容器可以分为两类&#xff1a; 用户程序所在的容器&#xff0c;数量可多可少 Pause容器&#xff0c;这是每个Pod都会有的一个根容器&#xff0c;它的作用有两个&#xff1a; 可以以它为依据&#xff0c;评估整个…

ADS仿真,3db均衡器是否可以补偿3db插入损耗?

背景高速信号走线经常会有走线超长的问题&#xff0c;走线过长带来的直接影响是对应的插入损耗IL会增加&#xff0c;当超过标准要求时需增加Redriver等补偿&#xff0c;最常用的调整时增加预加重和去加重。而调整预加重时首先遇到的一个问题是补偿多少db?是否3db的均衡就可以补…

剑指 Offer 21. 调整数组顺序使奇数位于偶数前面

摘要 剑指 Offer 21. 调整数组顺序使奇数位于偶数前面 一、双指针解析 考虑定义双指针 i , j分列数组左右两端&#xff0c;循环执行&#xff1a; 指针 i从左向右寻找偶数&#xff1b;指针 j从右向左寻找奇数&#xff1b;将偶数nums[i]和奇数 nums[j]交换。 可始终保证&…

C#:Krypton控件使用方法详解(第六讲) ——kryptonTextBox

今天介绍的Krypton控件中的kryptonTextBox&#xff0c;下面开始介绍这个控件的属性&#xff1a;首先介绍的是外观属性&#xff1a;Cursor属性&#xff1a;表示鼠标移动过该控件的时候&#xff0c;鼠标显示的形状。属性值如下图所示&#xff1a;Lines属性&#xff1a;表示在显示…