css3之grid布局

容器gird container开启grid布局的元素
项目grid items容器里面的子元素,不包括后代元素
显式网格(单元格):通过grid-template-columnsgrid-template-rows指定的网格,注意项目不等于单元格,可以通过属性设置某个项目占据多个单元格
隐式网格:超出指定网格之外的,比如指定两行两列,那么第五个元素就是隐式网格
网格区域:1个或者多个单元格组成的矩形区域

一、容器属性

1.grid-auto-flow

控制着自动布局算法怎样运作,精确指定在网格中被自动布局的元素怎样排列。

  • row(默认值)
    从上到下,从左到右的顺序依次排列

  • column
    从左到右,从上到下的顺序依次排列

  • dense
    一般都搭配上面两个属性使用,如果后面出现了稍小的元素,则会试图去填充网格中前面留下的空白。这样做会填上稍大元素留下的空白,但同时也可能导致原来出现的次序被打乱。

2. grid-template-columns和grid-template-rows

定义每一行和每一列的大小

<style>width: 600px;height: 600px;background-color: red;display: grid; //开启网格布局grid-auto-flow: column;// 具体值// grid-template-columns: 100px 100px;// grid-template-rows: 100px 100px;// 按比例计算// grid-template-columns: 1fr 1fr;// grid-template-rows: 1fr 1fr;// 值的简便写法,等同于1fr 1fr 1fr// grid-template-columns: repeat(3, 1fr);// grid-template-rows: repeat(3, 1fr);// 属性的缩写,前面是行,后面是列grid-template: repeat(3, 1fr) / repeat(3, 1fr);// 最大最小值grid-template-columns: repeat(3, minmax(100px, 1fr));grid-template-rows: repeat(3, minmax(100px, 1fr));//给行线和列线命名,方便后续使用,但是感觉很鸡肋,用处不大,因为这个名字不会显示在F12的审查元素里面//反而变得不直观了grid-template-columns: [c1-start]1fr [c1-end c2-start] 1fr [c2-end c3-start] 1fr [c3-end];grid-template-rows: [r1-start]1fr [r1-end r2-start] 1fr [r2-end r3-start] 1fr [r3-end];
</style>
3.grid-auto-rows和grid-auto-columns

设置隐式网格生成行和列的属性

 <style>grid-auto-rows: 100px;grid-auto-columns: 100px;</style>
4.grid-template-areas
<style>
.container{width: 400px;height: 400px;background-color: red;display: grid; //开启网格布局grid-auto-flow: row;grid-template: repeat(3, 1fr) / repeat(3, 1fr);//非常形象的把整个容器划分出来了grid-template-areas:"header header header""left main right""footer footer footer";
}
.item1 {background-color: blue;grid-area: header;}.item2 {background-color: yellow;grid-area: left;}.item3 {background-color: green;grid-area: main;}.item4 {background-color: pink;grid-area: right;}.item5 {background-color: rgb(171, 90, 104);grid-area: footer;}
</style>
5.容器内单元格对齐方式
<style>width: 400px;height: 400px;background-color: red;display: grid; //开启网格布局grid-auto-flow: row;/*水平对齐方式start end center space-evenly space-between space-around*/justify-content: start;/*垂直对齐方式,可选值有start end center space-evenly space-between space-around*/align-content: start;/*简写方式  第一个值是垂直对齐方式  第二个值是水平对齐方式*/place-content: space-around end;</style>
6.设置单元格内项目的对齐方式

注意区分上面对齐方式的区别

<style>width: 400px;height: 400px;background-color: red;display: grid; //开启网格布局grid-auto-flow: row;/*水平对齐方式start end center */justify-items: center;/*垂直对齐方式,可选值有start end center */align-items: center;: start;/*简写*/place-items: center center;</style>

二、项目属性

1.grid-row-start、grid-row-end、grid-row-start、grid-row-end

显式的指定项目占据的开始、结束单元格

<style>//行开始编号grid-row-start: 1;//列开始编号grid-column-start: 1;//行结束编号grid-row-end: 3;//列结束编号grid-column-end: 3;grid-row: 1 / 3;  //简写,第一个参数是开始位置,第二个参数是结束位置grid-column: 1 / 3;grid-row: 1 / span 2;  //span表示跨几行,偏移量,推荐使用这种方式,后续更改位置,只需要修改开始位置grid-column: 1 / span 2;grid-row: span 2; //如果从当前位置开始偏移,开始位置可以不写grid-column: span 2;grid-row: r1-start / r2-end;  //使用上面自定义命名grid-column: c1-start / c2-end;
</style>
2.grid-area
<style>grid-area: 1 / 1 / 3 / 3; //开始行 / 开始列 / 结束行 / 结束列
</style>

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

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

相关文章

C++容器:list

一、list的介绍及使用 list是可以在常数范围内在任意位置进行插入和删除的序列式容器&#xff0c;并且该容器可以前后双向迭代。list的底层是双向链表结构&#xff0c;双向链表中每个元素存储在互不相关的独立节点中&#xff0c;在节点中通过指针指向其前一个元素和后一个元素…

STL库——map/set(类函数学习)

ʕ • ᴥ • ʔ づ♡ど &#x1f389; 欢迎点赞支持&#x1f389; 个人主页&#xff1a;励志不掉头发的内向程序员&#xff1b; 专栏主页&#xff1a;C语言&#xff1b; 文章目录 前言 一、序列式容器和关联式容器 二、set 系列的使用 2.1、set 和 multiset 参考文档 2.2、set…

计算机网络IP协议

1.TCP协议1.1 确认应答1.2 超时重传1.3 连接管理1.4 滑动窗口1.5 流量控制1.6 拥塞控制 1.7 延时应答1.8 稍带应答1.9 粘包问题1.10 异常情况2.IP协议 网络层2.1 NAT机制下的几种情况:同一个局域网中,内网ip访问 内网 ip,可以的不同局域网中,内网IP访问 内网IP,不行~~外网IP访…

Windows电脑如何查看wifi连接记录及连接时间

查询WIFI 连接的记录 echo netsh wlan show profiles netsh wlan show wlanreport POWERSHELL 脚本 Get-WinEvent -LogName Microsoft-Windows-WLAN-AutoConfig/Operational | Where-Object { $_.Id -in (8001,8002) } | Select-Object TimeCreated, Id, {Name"Action…

【golang学习笔记 gin 】1.2 redis 的使用

安装redis go get -u github.com/gin-gonic/gin go get -u github.com/go-redis/redis/v8创建相关目录 gotest->conifg->database.go->redis.go->controller ->index.go->model->user.go->router->router.gomain.go 封装Redis package config impor…

Java学习之——“IO流“的进阶流之序列化流的学习

一、核心概念&#xff1a;什么是序列化与反序列化&#xff1f;序列化 (Serialization)&#xff1a; 将一个对象&#xff08;在内存中的状态&#xff09;转换成一个字节序列的过程。这个字节序列包含了对象的数据、对象的类型以及对象中存储的属性等信息。反序列化 (Deserializa…

机器学习04——决策树(信息增益、信息增益率、ID3、C4.5、CART、剪枝、连续值缺失值处理)

上一章&#xff1a;机器学习03——线性模型 下一章&#xff1a;机器学习05——多分类学习与类别不平衡 机器学习实战项目&#xff1a;【从 0 到 1 落地】机器学习实操项目目录&#xff1a;覆盖入门到进阶&#xff0c;大学生就业 / 竞赛必备 文章目录一、决策树的基本流程&#…

(论文速读)从语言模型到通用智能体

论文题目&#xff1a;From Multimodal LLMs to Generalist Embodied Agents: Methods and Lessons&#xff08;从多模式大型语言模型到多面手具身代理:方法和教训&#xff09;会议&#xff1a;CVPR2025摘要&#xff1a;我们研究了多模态大型语言模型(Multimodal Large Language…

【Epiq Solutions】Matchstiq™ G20 和 Matchstiq™ G40 AI SDR

Matchstiq™ G20 和 Matchstiq™ G40 产品简介 Matchstiq™ G20 和 Matchstiq™ G40 是 Epiq Solutions 推出的 紧凑型、高性能软件定义无线电&#xff08;SDR&#xff09;平台&#xff0c;专为满足 严苛 SWaP-C&#xff08;体积、重量、功耗受限&#xff09;场景下的战术与移动…

基于Echarts+HTML5可视化数据大屏展示-旅游智慧中心

效果展示&#xff1a; 代码结构&#xff1a;主要代码实现 index.html布局 <!DOCTYPE html> <html lang"en" style"font-size: 97.5px;"> <head><meta http-equiv"Content-Type" content"text/html; charsetUTF-8"…

Docker 镜像的使用

1.镜像的基本信息[roothost1 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE ubuntu latest 802541663949 2 weeks ago 78.1MB hello-world latest 1b44b5a3e06a 4 weeks ago 10.1kB执行 docker images 命令时加上 --no…

网络编程;套接字;TCP通讯;UDP通讯;0909

思维导图TCP服务器端和客户端通讯服务器端 代码#include<myhead.h> #define SER_IP "192.168.109.12"//我的虚拟机的ip #define SER_PORT 8888 int main() {//1.创建一个用于连接的套接字文件描述符int sfd socket(AF_INET,SOCK_STREAM,0);if(sfd-1){perror(&…

贪心算法应用:柔性制造系统(FMS)刀具分配问题详解

Java中的贪心算法应用&#xff1a;柔性制造系统(FMS)刀具分配问题详解 1. 问题背景与定义 柔性制造系统(Flexible Manufacturing System, FMS)是现代智能制造中的关键组成部分&#xff0c;它能够灵活地适应不同产品的生产需求。在FMS中&#xff0c;刀具分配是一个核心优化问题&…

不止是DELETE:MySQL多表关联删除的JOIN语法实战详解

MySQL 的 ​​DELETE​​ 语句用于从数据库表中删除记录。这是一项非常强大且危险的操作&#xff0c;因为一旦执行&#xff0c;数据通常无法恢复。理解其语法和安全实践至关重要。以下是 MySQL 删除语句的详细指南。一、 核心语法&#xff1a;DELETE​​DELETE​​ 语句用于删除…

ubuntu 系統使用過程中黑屏問題分析

背景&#xff1a; 工欲善其事&#xff0c;必先利其器。作为程序员&#xff0c;想要得到更好的发展&#xff0c;遇到问题直接baidu, google 虽然可以得到一些参考或者答案&#xff0c;但是也会降低自己的思考能力&#xff0c;本文以ubuntu 使用过程中黑屏这一问题为背景&#x…

Redis(45)哨兵模式与集群模式有何区别?

Redis 提供了两种高可用性解决方案&#xff1a;哨兵模式和集群模式。它们各自有不同的特点和适用场景。以下是详细的对比和结合代码的示例&#xff1a; 哨兵模式&#xff08;Sentinel&#xff09; 特点高可用性&#xff1a; Sentinel 通过监控、通知、故障转移等功能&#xff0…

微信小程序如何进行分包处理?

目录 分包是什么&#xff1f; 为什么要分包&#xff1f; 分包前后结构对比 具体操作步骤 第 1 步&#xff1a;规划分包结构 第 2 步&#xff1a;修改 app.json 进行配置 第 3 步&#xff1a;创建分包目录并移动文件 第 4 步&#xff1a;处理组件和工具函数的引用 第 5…

Go语言极速入门与精要指南从零到精通的系统化学习路径

&#x1f49d;&#x1f49d;&#x1f49d;欢迎莅临我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 持续学习&#xff0c;不断…

git 切换仓库后清理分支缓存

我明白了&#xff0c;从您的截图可以看到远程仓库中有 feature/v1.4_20250903 分支&#xff0c;但本地 git branch -r 看不到&#xff0c;这是因为之前更换过仓库地址后需要重新获取远程仓库的所有信息。让我们执行以下步骤来解决这个问题&#xff1a; 首先执行 git fetch --al…

考研倒计时101天---路由选择协议

路由选择协议&#xff1a;RIP 与 OSPFRIP 协议&#xff08;基于距离向量算法&#xff09;RIP&#xff08;Routing Information Protocol&#xff09;是一种内部网关协议&#xff08;IGP&#xff09;&#xff0c;采用距离向量算法进行路由选择。其主要特点如下&#xff1a;工作机…