grid-auto-rows
版本:CSS3
CSS属性 grid-auto-rows 用于指定隐式创建的行轨道大小。如果定位到某行中的网格元素没有使用 grid-template-rows来指定大小,则会隐式创建grid 轨道来保存它。这可能在显示定位到超出范围的行,或者由自动放置算法创建额外的行时发生。
示例
/* Keyword values */ grid-auto-rows: min-content; grid-auto-rows: max-content; grid-auto-rows: auto; /* <length> values */ grid-auto-rows: 100px; grid-auto-rows: 20cm; grid-auto-rows: 50vmax; /* <percentage> values */ grid-auto-rows: 10%; grid-auto-rows: 33.3%; /* <flex> values */ grid-auto-rows: 0.5fr; grid-auto-rows: 3fr; /* minmax() values */ grid-auto-rows: minmax(100px, auto); grid-auto-rows: minmax(max-content, 2fr); grid-auto-rows: minmax(20%, 80vmax); /* multiple track-size values */ grid-auto-rows: min-content max-content auto; grid-auto-rows: 100px 150px 390px; grid-auto-rows: 10% 33.3%; grid-auto-rows: 0.5fr 3fr 1fr; grid-auto-rows: minmax(100px, auto) minmax(max-content, 2fr) minmax(20%, 80vmax); grid-auto-rows: 100px minmax(100px, auto) 10% 0.5fr fit-content(400px); /* Global values */ grid-auto-rows: inherit; grid-auto-rows: initial; grid-auto-rows: unset;
浏览器支持
![]() | ![]() | ![]() | ![]() | ![]() |
IE不支持grid-auto-rows ,其余浏览器都支持grid-auto-rows |
语法
grid-auto-rows :<track-breadth>| minmax(<inflexible-breadth>, <track-breadth>)| fit-content([ <length>| <percentage>])
取值
- <length>:非负值的长度大小。
- <percentage>:非负值且相对于网格容器的<百分比>。如果网格容器的尺寸大小依赖网格轨道的大小(比如 inline-grid ),则百分比值将被视为auto。为了遵守网格的百分比,网格轨道本身定义的大小,将自动被调整为相对网格容器大小,并且是以最小量将网格轨道调整到最终的大小。
- <flex>:非负值,用单位fr来定义网格轨道大小的弹性系数。每个定义了<flex>的网格轨道会按比例分配剩余的可用空间。当外层用一个 minmax()表示时,它将是一个自动最小值(即
minmax(auto,<flex>)
) - max-content:是一个用来表示以网格项的最大的内容来占据网格轨道的关键字
- min-content:是一个用来表示以网格项的最大的最小内容来占据网格轨道的关键字。
- minmax(min, max):是一个来定义大小范围的属性,大于等于min值,并且小于等于max值。如果max值小于min值,则该值会被视为min值。最大值可以设置为网格轨道系数值<flex>,但最小值则不行。
- auto:如果该网格轨道为最大时,该属性等同于<max-content>,为最小时,则等同于<min-content>。
- fit-content([<length>|<percentage>]):相当于公式 min(max-content, max(auto, argument)),类似于auto 的计算(即 minmax(auto, max-content)),除了网格轨道大小值是确定下来的,否则该值都大于 auto 的最小值。
- repeat([<positive-integer>| auto-fill | auto-fit ],<track-list>):表示网格轨道的重复部分,以一种更简洁的方式去表示大量而且重复列的表达式。
实例
#grid { width: 200px; display: grid; grid-template-areas: "a a"; grid-gap: 10px; grid-auto-rows: 100px; } #grid > div { background-color: lime; } <div id="grid"> <div id="item1"></div> <div id="item2"></div> <div id="item3"></div> </div>