CSS最小值计算函数--min()函数的定义和使用
min()函数可以计算出一系列用逗号分割的参数中的最小值,这些值可以是字面量、数学函数、或其他表达式如calc()函数的计算结果或者var()的自定义属性,并且min()函数的参数可以是不同单位的。可以用来计算长度、角度、频率、时间等数值。与max()函数正好想法。
一、min()函数的语法:
property: min(expression [, expression])
min()函数的参数可以是多个,每个参数使用逗号(,)进行分割,如:
width: min(1vw, 4em, 80px);
上述代码,浏览器会根据当前视口大小,及一个em对应的像素值,将其转化为统一单位后,再取最小值。如视口大小为800px、1em=10px时,则宽度width会取最小值,4em及40px的宽度。
二、min()函数的使用:
思考如下前端切图场景:我们要做一个banner条,在小屏幕设备上显示90%的宽度,但是在大屏幕显示器上(这里指的是宽度大于800px的屏幕,800px×90%=720px),最多只显示720px的宽度。以往这种场景,我们需要借助CSS的媒体查询来实现。随着技术的发展,min()函数就可以很好的解决这个问题,实现代码如下:
HTML代码:
<div class="banner"></div>
CSS代码:
.banner{ width: min(90%,720px); height: 200px; background: pink; margin: 0 auto;}
这样就能实现在PC电脑等设备上最多只能显示720px宽度,但是在手机等小于720px的小屏幕设备上只能显示90%的宽度的banner条了。
上述需求也可用以下CSS代码实现。
.banner { width: 90%; max-width: 720px;}
但是min()函数直接传入多个参数,更加强大和灵活一些。
同样,在制作表单页面的时候,我们也经常会遇到表单因空间不足导致变形或折行等问题。也可以借助min()等CSS计算函数来实现。
三、min()函数使用注意:
1、min()函数直接传入的参数必须有效,比如数值型,比如传入颜色值red,则会报错。如果参数为CSS计算函数时,且该函数计算结果为非数值,则会被忽略。
//传入非数值非函数类型的参数,会报错
.banner{ width: min(90%,red,720px);} // 错误写法
//传入的函数型参数,如计算结果为非数值,会忽略
:root{ --color:red;}
.banner{ width: min(90%,var(--color),720px);}
2、在min()的参数中,可以使用圆括号()嵌套CSS函数,改变计算的优先级。注意:如果要进行加减乘数等数学表达式运算,无需使用calc函数,因为min()函数和calc()的参数都为表达式。但是需要与calc()函数要求的一样,在加减运算时,运算符两边留空白字符。如:
.banner{ width: min(90% - 100px,720px);}
最小值计算的min()函数,相对其他CSS函数来说,还是非常简单的,熟练应用,可以简化很大的工作。
- - - - - - - - -
更多CSS函数的介绍和使用,请移步查看:《CSS函数使用详解》
- CSS颜色函数--rgb()、rgba()的语法和使用
rgb()函数和rgba()函数是前端切图工作当中经常用到的颜色函数,根据光学三原色红(red)、绿(green)、蓝(blue)三种颜色的不同分量进行混合后来
- CSS最大值计算函数--max()函数的定义和使用
max()函数的作用是从一系列用逗号分割的参数中选取最大的一个,作为属性值,参数可以是直接数值,字面量、数学表达式、css函数等,支持嵌套。与min()函数的作
- 后台发布文章时自动保存草稿功能的实现
“正在系统后台编辑文章,顺手看了下群里的视频,关视频的时候不小心连网页一起关闭了,写了大半的文章说没就没了?”,相信很多人都遇到过这种场景,辛辛苦苦码了半天的字
- CSS获取属性值函数--attr()函数的定义和使用
attr()函数为CSS返回元素属性值函数一、attr()函数的语法:该函数接收一个单一参数:attribute-name,即属性名,attr()函数返回被选择
- 富文本编辑器CKEditor5接入指南
在后端制作CMS等需要用到富文本编辑器的时候,经常会陷入选择困难症,众所周知,目前市面上的富文本编辑器大概有数十种,比如百度的ueditor、TinyMCE、w
- WebStorm中如何配置SCSS
WebStorm是一款很优秀的用于前端开发的IDE,用于开发基于HTML、CSS、JS等的应用时非常应手,当然JetBrains旗下的其他IDE,如PHPSto
- CSS颜色函数--rgb()、rgba()的语法和使用
rgb()函数和rgba()函数是前端切图工作当中经常用到的颜色函数,根据光学三原色红(red)、绿(green)、蓝(blue)三种颜色的不同分量进行混合后来
- CSS限定属性值函数--clamp()函数的语法和使用
clamp()的作用是将属性值限制在最大、最小值之间,当值介于最大最小值范围中时,则使用给定的首选值。一、clamp()函数的语法clamp(MIN, VAL,