css 如果我设置了最小高度和最大高度,哪一个优先?

nxagd54h  于 2023-02-26  发布在  其他
关注(0)|答案(2)|浏览(158)

我有一个菜单,有9个项目。我希望按钮高度有40px或11%(1/9的屏幕)的屏幕大小。whathever是最大的。
现在我有:

min-height:40px;
max-height:11%;

它总是40px,即使我的屏幕尺寸比它大。
我能在css上实现吗?或者我必须使用javascript?
谢谢你。

    • 编辑**

JSFiddle的。
@Jeffery Khan是对的,这就解决了问题。我有一个不同的元素推动它。谢谢!

2sbarzqh

2sbarzqh1#

min-height通常是被设置为的任何东西的高度,除非有东西导致它扩展,比如div的内容。
请尝试以下操作:

min-height:40px;
height:11%;
twh00eeo

twh00eeo2#

既然我们有了min()max()clamp(),你就不需要javascript了。
虽然这些在2012年they've been well supported还没有出现,但现在已经有好几年了。
基于你最初的问题:

我希望高度为40 px或11%,取最大值:

首先,如果你想引用屏幕的比例大小,通常使用vwvh会更好,因为11%只是包含元素的11%,并且可能是不可预测的。
因此,使用min / max,您可以尝试以下操作:

height: max(40px, 11vw);

要获得更高级的(坦率地说,更容易阅读),您可以使用clamp:

height: clamp(100px, 50vh, 900px);

这将是'首选'的高度为一半的视口与最低100 px和最高900 px(为真正的高屏幕)。所以你得到真正的流体运动时,你调整屏幕没有编码。
当然,如果更适合您的需要,这些也可以与min-heightmax-height一起使用。
哇,我很惊讶十多年来没有人加这个!

相关问题