2020年编辑(最小值、最大值、钳位功能)
对于任何通过搜索引擎到达这里的人:
CSS min/max/clamp函数在最近的(2020)浏览器中得到了一些支持。您可以尝试max-width: min(200px, 50%);
。您可以在查看这些CSS函数的同时注意兼容性问题。
在2023年编辑(容器查询)
Container Queries已被Chrome 105、Firefox 110和iOS 16支持。
原文:
我想限制<div>
的宽度不超过50%
,和不超过200px
。
这意味着,当50%
小于200px
时,它应该具有与max-width: 50%
相同的行为,否则它的行为变为max-width: 200px
。
我如何用CSS定义它?
(不含min
function,尚不支持)
<div class="some_element">Text here</div>
<style>
.some_element {
background: red;
float: left;
width: auto;
max-width: 200px;
max-width: 50%; /* this will override previous one, but i want both of them work */
}
</style>
5条答案
按热度按时间pftdvrlh1#
当页面宽度未来或等于400 px时,你可以将这个规则设置为最大宽度的50%,当页面宽度大于或等于400 px时,设置为最大宽度的200 px。这听起来很像媒体查询!我首先处理较小的屏幕宽度,然后覆盖较大的宽度,这就是CSS:
如果愿意,可以交换
50%
和200px
,也可以将min-width
更改为max-width
。w9apscun2#
不能同时将max-width设置为200 px和50%。您可以将该元素放入另一个max-width为400 px的元素中:
mctunoxg3#
//参数设置
0pizxfdo4#
创建单独的类并基于outerWidth()动态添加它们
7jmck4yq5#
您可以尝试如下所述