搜索
博主信息
博文 19
粉丝 0
评论 1
访问量 19485
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
gird 属性与属性值应用
原创
1112人浏览过

grid 网格容器/网格项目/网格轨道/网格间距

  • 网格容器 :

    • 由若干个矩形网格单元组成
      • flex 中子元素默认为inline元素,grid中子元素默认为bliock元素
      • display:grid;
  • 网格项目:

    • 网格容器的子元素,必须放在网格单元中
    • 网格容器中的“子元素”,与flex是一样的. 默认生成一列N行的容器(N就是项目的数量)
  • 网格单元:

    • 有“单元格”和“网格区域” 两种表现形式
  • 网格轨道

    • 由多个网格单元组成吗,根据排列方向有“行轨”和“列轨”之分
    • grid-template-rows 设置轨道的行高

    • grid-template-columns 设置轨道的列宽、

  • 网格间距

    • 容器中轨道之间的间距,有“行轨间距”和“列轨间距”组成
    • gap 设置轨道间距 第一个参数是行高 第二个参数是列宽
    • gap 参数一样可以只写一个值

轨道间距

  • 隐式轨道:
    • 排列方式 grid-auto-flow
    • 自动生成的隐式轨道的高度时自动的,默认项目中在容器中按:先行后列 “行优先”,行优先时要设置行高
      • grid-auto-rows
    • 列优先
      • grid-auto-cloumns
序号 属性 描述
1 grid-template-columns 设置列的宽 可直接写N个值 可使用repeat()
2 grid-template-rows 设置行高 可直接写N个值 可使用repeat()
3 grid-template-columns:minmax(最小宽度, 最大宽度) minmax 可以设置最小值和最大值
grid-template-rows:minmax(最小宽度, 最大宽度) minmax 可以设置最小值和最大值
5 gap 设置轨道的间距,两个参数 第一个是水平方向的行高 第二高列方向的列宽
  • grid-template-columns:repeat(N列,列宽);
  • grid-template-rows:repeat(N行,行高);

  • grid-template-columns:repeat(N列,列宽) 最后一列的宽度;

    • 最后一列是后加的一列
  • grid-template-rows:repeat(N行,行高) 最后一行的行高;
    • 最后一行是后加的一行

示列 minmax()

  1. /*最小宽和最大宽度*/
  2. grid-template-colums:1fr minmax(20em,2fr) 1fr;

示列 repeat()

  1. /*设置三列两行*/
  2. grid-template-columns:repeat210em5em;
  3. grid-template-rowsrepeat(1,5em) 4em;

两行三列

示列

  1. /*轨道间距 行间距0.5em,列间距1em*/
  2. gap:0.5em 1em;

轨道间距

  • 设置轨道宽度时可以使用一个新的单位:fr(fraction),类似flex的伸缩因子
    • % 与 fr 共存,计算方式是:总宽度减去百分比的宽度,将剩下的全部分配给fr
    • auto,fr,% 都是相对单位,都可以触发自动计算机制,尽可能不同时使用
    • fr 与其他单位单位混合,如rm,px
      • px 和rm 是固定值,计算时要总宽度减去固定值吗,剩下分配给fr
    • grid-template-columns:1fr 2fr 1fr;

示列

  1. /*使用fr 中间的始终是两边的两倍*/
  2. grid-template-columns:1fr 2fr 1fr;

fr

  • grid-area : 设置任何一个项目所在的网格单元的区域
    • grid-area:行起始编号 / 列起始编号 / 行结束编号 / 列结束编号
    • 通常值关心跨几行或几列吗,并不关心结束的编号
      • grid-area: span 2 / span 3;
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>grid</title>
  7. <style>
  8. .container {
  9. padding: 1em;
  10. margin: 1em;
  11. border: 1px solid #000;
  12. display: grid;
  13. /*设置一个两行三列*/
  14. grid-template-columns:10em 10em 10em;
  15. grid-template-rows:5em 5em;
  16. /*两行三列 可简写为*/
  17. grid-template-colums:repeat(3,10em);
  18. grid-tempate-rows:repeat(2,5em);
  19. /*设置最小宽和最大宽*/
  20. grid-template-colums:1fr minmax(20em,2fr) 1fr;
  21. /*轨道间距*/
  22. gap:0.5em;
  23. }
  24. .container>.items {
  25. border: 1px solid #000;
  26. background-color: aqua;
  27. padding: 0.5em;
  28. }
  29. </style>
  30. </head>
  31. <body>
  32. <div class="container">
  33. <div class="items">1</div>
  34. <div class="items">2</div>
  35. <div class="items">3</div>
  36. <div class="items">4</div>
  37. <div class="items">5</div>
  38. <div class="items">6</div>
  39. </div>
  40. </body>
  41. </html>
批改老师:天蓬老师天蓬老师

批改状态:合格

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学