grid网格布局,如何设置单元格的默认尺寸和空隙?
发布于 作者:苏南大叔 来源:程序如此灵动~

对于grid
网格布局,苏南大叔来打个比方,就像是超市的那种蛋托,并且这个蛋托里面不但可以放普通的鸡蛋,还可以放更大的鸭蛋、鹅蛋、鸵鸟蛋。另外特别的是:这个蛋托有魔法,可以无限拓展,来的任何类型的蛋都可以装下。蛋托的尺寸还是按照原有的设定,能放下更大的蛋的原因是:占了多个相邻的蛋托而已。

大家好,这里是苏南大叔的程序如此灵动博客,记录苏南大叔的代码所学所想。本文测试环境:win10
,chrome
。本文主要解决没有columns
或者rows
的模版信息的时候,单元格的默认尺寸设置的问题。
通常定义template-columns
和template-rows
正常情况下来说,是通过grid-template-columns
和grid-template-rows
来定义每个网格的尺寸信息的。参考链接:
测试代码:
例子里面使用了grid-template
来表示grid-template-rows
和grid-template-columns
。

这里的例子还存在着一个问题,就是定义单元格的个数有限。而在实际的场景下,子元素的个数是不受限的,所需要的网格数量也是很多的,所以需要下面新的属性grid-auto-columns
/grid-auto-rows
。
默认尺寸:grid-auto-columns
/grid-auto-rows
grid-template-columns
和grid-template-rows
用于定义已知的格子,这两个属性grid-auto-columns
、grid-auto-rows
就是用于定义未知的格子尺寸,即格子尺寸的默认值。
这里仅仅是个建议型的默认值,不一定生效。毕竟grid
的各种属性相互作用的比较厉害。
测试代码如下:

空隙:grid-gap
/row-gap
/column-gap
这个就非常好理解了,就是设置网格之间的间隙。但是,这个属性gap
属性貌似可能是个废弃状态。但是,浏览器依然能够正常识别显示。所以,就暂时认为它还是有效的吧。

这些属性存在着多个别名。比如:
gap
这个词,让我想起了gap year
。
相关链接
- https://newsn.net/say/css-grid.html
- https://newsn.net/say/grid-auto-flow.html
- https://newsn.net/say/grid-auto-flow-dense.html
- https://newsn.net/say/grid-template.html
- https://newsn.net/say/grid-template-areas.html
- https://newsn.net/say/grid-minmax.html
总结
更多来自苏南大叔的css
精彩文章,请点击下面的链接:


