首页 > 解决方案 > min-height 和 max-height 属性值的实现区别

问题描述

在此处输入图像描述

正如我们在附图中看到的,当我们应用时min-height: none无效语法max-height: none而是有效语法。并且max-height: auto无效的语法min-height: auto有效的语法

但是当我查看文档min-heightmax-height时,它指出:

没有任何:

盒子的大小没有限制。

我在w3c上找不到确切的实现细节。任何人都知道为什么将这个逆概念应用于min-height财产max-height价值?或者,这只是浏览器的错误没有实现它们?

有人可能会说 docs 说明了none价值是什么,我们不应该担心。但我问这个是因为文件中的语法错误可能意味着影响性能 - 不过,这只是一个小意见。

标签: cssw3c

解决方案


如果您查看CSS2 规范,您可以阅读:

没有任何

仅在 'max-height'上)盒子的高度没有限制。

none不是min-height(also min-width) 的有效值,auto也不是两者的有效值。


auto值是在Box Sizing Module Level 3中引入的,而不是仅0用于min-height

注意:auto的初始值是新的;在 [CSS2] 中,初始值为零。

由于 Flexbox 和 CSS Grid 的value 不会计算到,所以automin-height/引入了valuemin-widthauto0

注意: auto 关键字,表示自动最小尺寸,是 min-width 和 min-height 属性的新初始值。该关键字之前在本规范中定义,但现在在 CSS Sizing 模块中定义参考

注意: min-width 和 min-height 的 auto 值会影响相关轴上的轨道大小,类似于它如何影响弹性项目的主要大小。请参阅 §6.6 网格项的自动最小大小。参考

我认为我们可以假设在 Flexbox 和 CSS Grid 范围之外,auto将计算到0


推荐阅读