【CSS Grid网格布局】常用属性,示例代码解读

这篇具有很好参考价值的文章主要介绍了【CSS Grid网格布局】常用属性,示例代码解读。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Grid布局是一种二维布局系统,可以将页面划分为行和列,并将元素放置在这些行和列的交叉点上。以下是Grid布局的一些常用属性:

grid-template-columns/grid-template-rows:用于定义网格的列和行的大小和数量。可以指定具体的尺寸值(如px、em等),也可以使用fr单位表示剩余空间的比例分配。

.container {
  display: grid;
  grid-template-columns: 100px 200px 300px;//第一列100px,第二列200px,第三列300px
  grid-template-rows: 50px 100px;//第一行高50px,第二行高100px
}

grid-column-gap/grid-row-gap:用于定义网格的列间距和行间距。可以使用具体的尺寸值或百分比。

grid-gap:grid-row-gap 和 grid-column-gap 的简写属性
语法:
grid-gap: grid-row-gap grid-column-gap;
.container {
  display: grid;
  grid-gap: 10px;//网格元素间距为10px
}

grid-template-areas:用于定义网格区域的布局。通过给每个网格区域命名,然后使用这些名称来指定元素在网格中的位置。

grid-auto-columns/grid-auto-rows:用于定义没有显式指定大小的网格的列和行的大小。可以使用具体的尺寸值或百分比。

grid-auto-flow:用于定义未显式放置在网格中的元素的放置方式。可以设置为"row"、“column"或"dense”。

justify-items/align-items:用于定义网格中所有元素的水平对齐方式和垂直对齐方式。

.item {
  justify-items: center; /* 水平居中对齐 */
  align-items: end; /* 底部对齐 */
}

justify-self/align-self:用于定义单个网格元素的水平对齐方式和垂直对齐方式,会覆盖父级的对齐方式。

grid-column-start/grid-column-end/grid-row-start/grid-row-end:用于定义单个网格元素的起始位置和结束位置。可以使用具体的网格线编号、span关键字或auto值。

grid-column: grid-column-start 和 grid-column-end 的简写属性
语法:
grid-column: grid-column-start / grid-column-end;
grid-row:grid-row-start 和 grid-row-end 的简写属性
语法:
grid-row:grid-row-start / grid-row-end ;
.item {
  grid-column: 2 / 4; /* 从第2列到第4列 */
  grid-row: 1 / 3; /* 从第1行到第3行 */
}

justify-content 和 align-content:设置网格容器中的内容在容器中的对齐方式。

.container {
  display: grid;
  justify-content: center; /* 水平居中对齐 */
  align-content: end; /* 底部对齐 */
}

这些属性可以通过在父元素上设置display属性为grid或inline-grid来启用Grid布局。通过调整这些属性的值,可以实现灵活的网格布局效果。

适用场景:

复杂的布局:CSS Grid布局非常适合创建复杂的网格布局,例如新闻网站的首页或仪表板。
响应式设计:由于CSS Grid布局的灵活性,它非常适合用于响应式设计,以适应不同的屏幕尺寸和设备。
网格嵌套:如果您需要在网格单元格中创建更复杂的嵌套结构,CSS Grid布局是一个很好的选择。
对齐和排序:如果您需要对网格中的元素进行精确的对齐和排序,CSS Grid布局提供了强大的功能。

示例:
【CSS Grid网格布局】常用属性,示例代码解读,css,css3

.left-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr); //宽度平均分成两等份
  grid-column-rows: repeat(2, 1fr); //高度平均分成两等份
  grid-template-areas: 'a b' 'a b'; //将现有的四个单元格定义为第一行a b ,第二行a b
  justify-content: center;
  align-items: center;
  margin-top: 10px;
}
.left-list-img {
  grid-area: a; //对应a区域
  width: 50px;
  height: 50px;
  border-radius: 5px;
}
.left-list-title {
  grid-area: b; //对应b区域
}


CSS Grid文档戳这里

文档上示例解读:
【CSS Grid网格布局】常用属性,示例代码解读,css,css3
首先了解一些基础知识,帮助我们更好的理解
CSS 网格布局,可在线尝试

网格列:网格元素的垂直线方向称为列(Column)
【CSS Grid网格布局】常用属性,示例代码解读,css,css3
网格行:网格元素的水平线方向称为行(Row)
【CSS Grid网格布局】常用属性,示例代码解读,css,css3
网格间距(Column Gap)指的是两个网格单元之间的网格横向间距或网格纵向间距。
【CSS Grid网格布局】常用属性,示例代码解读,css,css3
最重要的是网格线:
列与列,行与行之间的交接处就是网格线。

Grid 会为我们创建编号的网格线来让我们来定位每一个网格元素。

例如下面这个三列两行的网格中,就拥有四条纵向的网格线(灰色圆圈标记),以及三条横向的网格线(黑色圆圈标记)
【CSS Grid网格布局】常用属性,示例代码解读,css,css3
看懂上面这张图后,其实网格线column列就是从纵向的第一根开始,1-4,纵向有四根网格线
row行就是从横向的第一根开始,1-3,横向有三根网格线
下图则定义了四条纵向的网格线,以及四条横向的网格线:
【CSS Grid网格布局】常用属性,示例代码解读,css,css3
grid-column是grid-column-start 和 grid-column-end 的简写属性,如果只有一个值代表独占一列,如果两个值代表开始位置与结束位置
【CSS Grid网格布局】常用属性,示例代码解读,css,css3
grid-row是grid-row-start 和 grid-row-end 的简写属性,如果只有一个值代表独占一行,如果两个值代表开始位置与结束位置
【CSS Grid网格布局】常用属性,示例代码解读,css,css3文章来源地址https://www.toymoban.com/news/detail-663416.html

<div class="wrapper">
  <div class="one">One</div>
  <div class="two">Two</div>
  <div class="three">Three</div>
  <div class="four">Four</div>
  <div class="five">Five</div>
  <div class="six">Six</div>
</div>
.wrapper {
  display: grid;//开启grid布局
  grid-template-columns: repeat(3, 1fr);//等宽分为3等份
  gap: 10px;//网格单元格之间的间距为10px
  grid-auto-rows: minmax(100px, auto);//网格自动调整行高,最小高度100px,最大高度自动调整
}
.one {
  grid-column: 1 / 3;//纵向第一根网格线到第三根网格线,即第一到第二列
  grid-row: 1;//横向独占第一行
}
.two {
  grid-column: 2 / 4;//纵向第二根网格线到第四根网格线,即第二到第三列,因为都有第二列,所以第二列重合了
  grid-row: 1 / 3;//横向第一根网格线到第三根网格线,即第一到第二行
}
.three {
  grid-column: 1;//纵向独占第一列
  grid-row: 2 / 5;//横向第二根网格线到第五根网格线,即第二到第四行
}
.four {
  grid-column: 3;//纵向独占第三列
  grid-row: 3;//横向独占第三行
}
.five {
  grid-column: 2;//纵向独占第二列
  grid-row: 4;//横向独占第四行
}
.six {
  grid-column: 3;//纵向独占第三列
  grid-row: 4;//横向独占第四行
}

到了这里,关于【CSS Grid网格布局】常用属性,示例代码解读的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 最强大的布局方案——网格Grid布局万字详解

    Grid 布局又称网格布局,是W3C提出的一个二维布局系统,它与 Flex 布局有一定的相似性,都可以指定容器内部多个项目的位置。但它们也存在重大区别。Flex 布局是轴线布局,只能指定\\\"项目\\\"针对轴线的位置,可以看作是一维布局。Grid 布局则是将容器划分成\\\"行\\\"和\\\"列\\\",产生单

    2024年02月08日
    浏览(35)
  • Unity 网格布局控件-Grid Layout Group

    Unity 网格布局控件-Grid Layout Group是Unity中的UGUI控件,用于在 UI 中创建网格布局, 它的作用是:自动将子对象排列成网格,即我们可以通过该组件对子对象按行和列的形式排列,根据指定的约束条件自动调整它们的大小和位置。通常我们使用它创建具有规律排列的 UI 元素,如

    2024年02月04日
    浏览(35)
  • draggable + grid 拖拽插件 + 网格布局 动态生成首页模版

    背景:         1、首页模板由多个子组件组成,如图表、新闻、公告、轮播图等,一般都由前端引入子组件,写在固定的位置上,最终形成一个固定的首页模板;         2、像这样直接在代码中写死的首页没有灵活性,不同用户想展示出来的首页模板千篇一律;        

    2024年02月01日
    浏览(30)
  • 【CSS3】CSS3 3D 转换 ① ( CSS3 3D 转换简介 | 3D 物体与 2D 物体区别 | 3D 空间坐标系 | 常用的 3D 转换属性 | 3D 位移转换语法 | 代码示例 )

    3D 显示的物体 与 平面 2D 显示的物体有明显的不同 , 3D 显示效果有 近大远小 的 特点 ; 元素的 2D 的 转换效果 有 平移 , 旋转 , 缩放 效果 , 同样有对应的 3D 转换效果 ; 2D 平面坐标系 中 , 只有 x 轴 和 y 轴 ; 3D 空间坐标系 比 2D 平面坐标系 多了一个 Z 轴 ; x 轴 : 水平向右 ; 左侧是

    2024年02月12日
    浏览(31)
  • 【前端】CSS(引入方式+选择器+常用元素属性+盒模型+弹性布局)

    层叠样式表(Cascading Style Sheets) 对元素位置的排版进行精确控制,实现结构和样式的分离 CSS 控制页面的展示效果 HTML决定页面的结构 选择器+{一条/N条声明} 选择器:要修改谁 声明:具体要修改什么内容。声明的属性是键值对,用分号区分,键和值用: 通常情况下,把style放

    2024年04月15日
    浏览(33)
  • 【移动端网页布局】flex 弹性布局子项目属性 ① ( flex 属性用法说明 | 代码示例 : 占有剩余布局 / 平均分成若干等份 )

    flex 子项目 的常用属性 : flex 属性 : flex 子项目 在 flex 父容器 中 占有的 份数比例 , 如果都设置 1 , 那么将对应尺寸平分即可 ; align-self 属性 : 控制 flex 子项目 在 侧轴 的排列方式 ; order 属性 : 控制 flex 子项目 的排列顺序 ; 主要是修改前后顺序 , 原来是 1 - 2 - 3 排列顺序 , 可以

    2024年02月09日
    浏览(39)
  • CSS Grid布局

    网格布局(Grid)将王爷分成一个个网格,可以任意组合不同的网格,做出各种各样的布局。Grid布局与Flex不具有一定的相似性,都可以指定容器内部多个项目的位置,但是他们存在重大的区别。flex布局时轴线布局,只能指定项目针对轴线的位置,可以看作是一维布局;grid布

    2024年02月15日
    浏览(39)
  • 43.CSS grid布局

    本节我们学习的初始代码如下: 注:如上,同行情况下,一个元素有高度的话,同行元素会被拉伸,这是默认行为 注:(3)没有被拉伸是因为它有固定高度

    2023年04月18日
    浏览(34)
  • CSS-grid布局

    网格布局也叫grid布局,平常写样式的时候基本上都是用的flex布局。 像以下布局,用flex布局就可能会有有点麻烦,这时候用grid布局就方便的多了。 或者是照片墙 grid布局就是将容器划分为行和列,产生单元格,然后在指定的单元格,可以看作是二维布局,我们一直经常用的

    2024年02月13日
    浏览(37)
  • css3 Grid布局

    Grid布局是一种强大的CSS布局系统,它可以帮助我们创建灵活的网格结构,使网页布局更易于管理和响应式。 Grid布局由网格容器(Grid Container)和网格项(Grid Item)组成。网格容器是包含网格项的父元素,而网格项则是直接放置在网格容器中的子元素。 在上述示例中,我们创

    2024年02月09日
    浏览(69)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包