minmax() - CSS(层叠样式表) 编辑
CSS函数minmax
()
定义了一个长宽范围的闭区间, 它与CSS网格布局一起使用。
/* <inflexible-breadth>, <track-breadth> values */
minmax(200px, 1fr)
minmax(400px, 50%)
minmax(30%, 300px)
minmax(100px, max-content)
minmax(min-content, 400px)
minmax(max-content, auto)
minmax(auto, 300px)
minmax(min-content, auto)
/* <fixed-breadth>, <track-breadth> values */
minmax(200px, 1fr)
minmax(30%, 300px)
minmax(400px, 50%)
minmax(50%, min-content)
minmax(300px, max-content)
minmax(200px, auto)
/* <inflexible-breadth>, <fixed-breadth> values */
minmax(400px, 50%)
minmax(30%, 300px)
minmax(min-content, 200px)
minmax(max-content, 200px)
minmax(auto, 300px)
语法
此函数包含两个参数,最小值 和 最大值.
每个参数分别是<length>
、<percentage>
、<flex>
的一种,或者是max-content
、min-content
、或auto
之一。
如果 最大值 < 最小值,则最大值被忽略并且minmax(最小值,最大值)
被看成最小值。<flex>
值作为最大值时设置网格轨道的弹性系数;作为最小值时无效。
取值
<length>
- 非负长度。
<percentage>
- 相对于列轨道中网格容器的内联大小的非负百分比,以及行轨道中网格容器的块长宽。 如果网格容器的长宽取决于其轴的长宽,则
<percentage>
必须取值为auto
。user agent 可将轨道的内部长宽贡献调整为网格容器的长宽,并按将导致百分比达到的最小值来增加轨道的最终长宽。 <flex>
- 单位为
fr
的非负维度,指定轨道弹性布局的系数值。每个<flex>
长度的轨道都以其系数值比例均分剩余空间。 max-content
- 表示网格的轨道长度自适应内容最大的那个单元格。
min-content
- 表示网格的轨道长度自适应内容最小的那个单元格。
auto
- 作为最大值时,等价于
max-content
。作为最小值时,它表示轨道中单元格最小长宽 (由min-width
/min-height
)的最大值。
正式语法
minmax( [ <length> | <percentage> | min-content | max-content | auto ] , [ <length> | <percentage> | <flex> | min-content | max-content | auto ] )
示例
CSS
#container {
display: grid;
grid-template-columns: minmax(max-content, 300px) minmax(200px, 1fr) 150px;
grid-gap: 5px;
box-sizing: border-box;
height: 200px;
width: 100%;
background-color: #8cffa0;
padding: 10px;
}
#container > div {
background-color: #8ca0ff;
padding: 5px;
}
HTML
<div id="container">
<div>
Item as wide as the content,<br/>
but at most 300 pixels.
</div>
<div>
Item with flexible width but a minimum of 200 pixels.
</div>
<div>
Inflexible item of 150 pixels width.
</div>
</div>
Result
规范
规范 | 状态 | 备注 |
---|---|---|
CSS Grid Layout minmax() | Candidate Recommendation | 初始定义 |
浏览器兼容性
BCD tables only load in the browser
此页上的兼容性表是从结构化数据生成的。如果您想对数据作出贡献, 请查看https://github.com/mdn/browser-compat-data并向我们发送请求。参考
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论