grid真香系列

1 .display:grid
  • 设为网格布局以后,容器子元素(项目)的float、display: inline-block、display: table-cell、vertical-align和column-*等设置都将失效。

grid-template-columns 定义了每一列宽度,grid-template-rows规定了每一行的宽度

.container {
  display: grid;
  grid-template-columns: 100px 100px 100px;
  grid-template-rows: 100px 100px 100px;
}
或者
.container {
  display: grid;
  grid-template-columns: 33.33% 33.33% 33.33%;
  grid-template-rows: 33.33% 33.33% 33.33%;
}

效果图:


image.png
2 . repeat()

接受两个参数,第一个参数是重复的次数(上例是3),第二个参数是所要重复的值。
上面的代码可以简化为:

.container {
  display: grid;
  grid-template-columns: repeat(3, 33.33%);
  grid-template-rows: repeat(3, 33.33%);
}
3 .auto-fill关键字

有时,单元格的大小是固定的,但是容器的大小不确定。如果希望每一行(或每一列)容纳尽可能多的单元格,这时可以使用auto-fill关键字表示自动填充。

.container {
  display: grid;
  grid-template-columns: repeat(auto-fill, 100px);
}
image.png
4.fr关键字

为了方便表示比例关系,网格布局提供了fr关键字(fraction 的缩写,意为"片段")。如果两列的宽度分别为1fr和2fr,就表示后者是前者的两倍。

.container{
    display:grid;
    grid-template-columns:1fr 1fr
}
5 .minmax()

minmax产生一个长度范围,接受两个值,一个是最大值,一个是最小值

grid-template-columns:1fr 1fr minmax(100px ,1fr)
// minmax表示不小于100px  ,不大于1fr
6 . 布局实例
.wrapper{
       display:grid;
       grid-template-columns:70% ,30%
}

上面代码将左边栏设为70%,右边栏设为30%。

7 . grid-row-gap 、grid-column-gap 、 grid-gap

grid-row-gap设置行间距
grid-column-gap 设置列间距
grid-gap 是grid-column-gap和grid-row-gap的简写

8 . grid-template-areas属性
.container {
  display: grid;
  grid-template-columns: 100px 100px 100px;
  grid-template-rows: 100px 100px 100px;
  grid-template-areas: 'a a a'
                       'd e f'
                       'g h i';
}
.header{
    grid-area:a
}
.content-left{
    grid-area:d
}
.content-left{
    grid-area:d
}
.content-center{
    grid-area:e
}
.content-right{
    grid-area:f
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • CSS Grid 网格布局教程 作者: 阮一峰 一、概述 网格布局(Grid)是最强大的 CSS 布局方案。 它将...
    Daeeman阅读 1,183评论 0 2
  • 一、概述 网格布局(Grid)是最强大的 CSS 布局方案。 它将网页划分成一个个网格,可以任意组合不同的网格,做...
    有希望的活着阅读 3,047评论 0 1
  • 一、概述 网格布局(Grid)是最强大的 CSS 布局方案。 它将网页划分成一个个网格,可以任意组合不同的网格,做...
    文艺小菜阅读 677评论 0 1
  • 前面我们讲到了一种非常方便的布局方式flex,也提到了他是一种非常方便的一维布局解决方案,那么二维呢?我们有Gri...
    尐羽阅读 602评论 0 0
  • Grid 布局和 Flex 布局 Grid 布局和 Flex 布局有点相似,两者都是指定容器内部项目的位置,而且不...
    漫若浮光z阅读 1,110评论 0 0

友情链接更多精彩内容