码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • grid布局


    grid布局

    • 什么是Grid 布局
    • 设置grid布局 display:grid;
    • 容器属性(container)
      • 1.grid-template-columns
      • repeat(3,100px) 100px重复三遍
      • auto-fill,所有东西一行自动填充,写不下换行
      • fr,为了方便表示比例关系
      • grid-template-columns: 1fr minmax(150px,1fr); // 第一个参数最小值,第二个最大值
      • auto,内容占据剩下的所以长度
      • 网格线写法
      • 2.grid-template-rows
      • 3.row-gap(每行之间列间距)
      • 4.column-gap(每列之间列间距)
      • 5.gap (3和4的简写)
      • 6.grid-template-areas 定义区域自己划分
      • 7.grid-auto-flow 子项排列方向
      • 8. justify-items 子元素水平对齐方式(相对于每个网格的)
      • 9.align-items 子元素垂直对齐方式
      • 10.place-items(8和9的简写)
      • 11.justify-content 大容器的水平对齐方式
      • 12.align-content 大容器的垂直对齐方式
      • 13.place-content(11和12的简写)
      • 14.grid-auto-columns 多出来的项目宽和高
      • 15.grid-auto-rows 多出来的项目宽和高
    • 项目属性(items)
      • 1.grid-column-start 根据网格线指定位置
      • 2.grid-column-end
      • 3.grid-row-start
      • 4.grid-row-end
      • 5.grid-column(1和2的简写形式)
      • span 2
      • 6.grid-row(3和4的简写形式)
      • 7.grid-are 设置项目存放那个区域
      • 用法一:作为grid-row和grid-column的简写
      • 用法二:设置项目区域 搭配grid-template-areas
      • 8.justify-self 单个项目水平方向
      • 9.align-self 单个项目垂直方向
      • 10.place-self (8和9的简写形式)

    什么是Grid 布局

    Grid 布局即网格布局,是一种新的 CSS 布局模型,比较擅长将一个页面划分为几个主要区域,以及定义这些区域的大小、位置、层次等关系。号称是最强大的的 CSS 布局方案,是目前唯一一种 CSS 二维布局。
    在这里插入图片描述

    设置grid布局 display:grid;

    1.容器—有容器属性(container)

    2.项目—有项目属性(items)

    容器属性(container)

    1.grid-template-columns

    repeat(3,100px) 100px重复三遍

    grid-template-columns:100px 100px 100px; // 显示为三列每一列宽度100px 
    grid-template-columns:repeat(3,100px);  //同上
    
    • 1
    • 2

    auto-fill,所有东西一行自动填充,写不下换行

    grid-template-columns: repeat(auto-fill,100px);
    
    
    • 1
    • 2

    fr,为了方便表示比例关系

    grid-template-columns:repeat(4,1fr); // 宽度平均分成四等份 
    grid-template-columns:1fr 2fr 3fr;   // 列宽这样是分成6份各占 1 2 3 份 效果如下图 
    
    
    • 1
    • 2
    • 3

    grid-template-columns: 1fr minmax(150px,1fr); // 第一个参数最小值,第二个最大值

    grid-template-columns: 1fr minmax(150px,1fr);  // 第一个参数最小值,第二个最大值
    
    • 1

    在这里插入图片描述

    auto,内容占据剩下的所以长度

    grid-template-columns: 100px auto 100px;
    
    
    • 1
    • 2

    网格线写法

    grid-template-columns: [c1] 100px [c2] 100px [c3] 100px [c4]; 
    
    
    • 1
    • 2

    2.grid-template-rows

    同上

    3.row-gap(每行之间列间距)

     row-gap:20px;
    
    • 1

    4.column-gap(每列之间列间距)

     column-gap:20px;
    
    • 1

    5.gap (3和4的简写)

    gap:20px 20px;
    
    • 1

    在这里插入图片描述

    6.grid-template-areas 定义区域自己划分

    用来搭配 grid-area
    在这里插入图片描述

    7.grid-auto-flow 子项排列方向

    grid-auto-flow:row|column| row dense
    
    • 1

    在这里插入图片描述

    在这里插入图片描述

    子元素 默认的放置顺序是"先行后列".即先填满第一行,再开始放入第二行(就是子元素的排放顺序)

    8. justify-items 子元素水平对齐方式(相对于每个网格的)

    justify-items:start|end|center|stretch
    
    • 1

    在这里插入图片描述

    9.align-items 子元素垂直对齐方式

    10.place-items(8和9的简写)

    place-items: 水平 垂直;
    
    • 1

    11.justify-content 大容器的水平对齐方式

    justify-content: start | end | center | stretch | space-around | space-between | space-evenly;   //水平方向
    
    • 1

    12.align-content 大容器的垂直对齐方式

    align-content: start | end | center | stretch | space-around | space-between | space-evenly;     // 垂直方向
    
    • 1

    13.place-content(11和12的简写)

    place-content:水平 垂直;
    
    • 1

    在这里插入图片描述

    14.grid-auto-columns 多出来的项目宽和高

    15.grid-auto-rows 多出来的项目宽和高

      grid-auto-rows: 50px;
    
    • 1

    在这里插入图片描述

    项目属性(items)

    在这里插入图片描述

    grid-template-columns: [c1] 100px [c2] 100px [c3] 100px [c4]; 
    网格线定位用,3列4根线
    
    • 1
    • 2

    1.grid-column-start 根据网格线指定位置

    在这里插入图片描述

    grid-column-start:1;
    grid-column-end:3;
    网格线1-3 所以占2个格子
    
    • 1
    • 2
    • 3

    2.grid-column-end

    3.grid-row-start

    4.grid-row-end

    5.grid-column(1和2的简写形式)

    grid-column-start:1;
    grid-column-end:3;
    
    简写形式1:grid-column:1/3;
    简写形式2:grid-column:span 2;
    
    • 1
    • 2
    • 3
    • 4
    • 5

    span 2

    在这里插入图片描述

    6.grid-row(3和4的简写形式)

    7.grid-are 设置项目存放那个区域

    用法一:作为grid-row和grid-column的简写

    在这里插入图片描述

    用法二:设置项目区域 搭配grid-template-areas

    在这里插入图片描述
    在这里插入图片描述

     grid-template-areas: 'a a a''b c c''d d e';
    
    • 1
     .item-1 {
            grid-area: a;
        }
    
        .item-2 {
            grid-area: c;
        }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    8.justify-self 单个项目水平方向

    和justify-items一样

    在这里插入图片描述

    9.align-self 单个项目垂直方向

    在这里插入图片描述

    10.place-self (8和9的简写形式)

    place-self :center center;
    
    • 1

    原文链接
    作者:雨溪滩
    链接:https://www.jianshu.com/p/3762f214cd6f
    来源:简书

  • 相关阅读:
    Red Giant Trapcode Suite 红巨星粒子插件
    你知道Vue3中style新增了哪些特性吗?
    公交实时位置查询APP
    PHP 火车票售票查询管理系统mysql数据库web结构apache计算机软件工程网页wamp
    Github首页美化(updating)
    信创操作系统--麒麟Kylin桌面操作系统 (项目十二 使用Systemd管理系统服务)
    nginx进程间同步机制-互斥锁
    每晚坚持10点前睡觉,半年后有什么变化?感觉自己年轻好几岁
    注意力机制
    算法学习:LeetCode-593. 有效的正方形
  • 原文地址:https://blog.csdn.net/weixin_51109349/article/details/125581176
  • 最新文章
  • 【FHE】我们如何实现同态加密推理(八):SiLU 的密文化——两条路径,和一个 8 字节的开关
    SQLcl 中 c/old/new 替换变量为何失效?先定位再替换
    不让模型写作文,直接从它脑子里读答案:Jev 决策在 .NET 的两条路线
    Halo插件:支持GitHub的图床附件策略
    电视投屏界的“一股清流”!SimpleTVCast 6.0.0-beta 抢先体验:无需TV端App,界面大换血!✨
    华三VXLAN集中式网关实战指南:Spine多活网关 + 双活接入(M-LAG)
    软件更好写之后口碑会更重要
    大 O、大 Omega、大 Theta 的区别,O(n) 复杂度是什么意思
    Java标签跳转:一个鲜为人知但却很实用的小技巧
    多智能体系统论文速读
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号