常用的css函数有哪些,你都用过吗?

简介: css 的函数有哪些?他们都有什么作用?你认得哪些?你用过哪些?今天我就带你们一起来了解一下 css 的函数吧!

css的函数有哪些?他们都有什么作用?你认得哪些?你用过哪些?今天我就带你们一起来了解一下css的函数吧!

1. calc()

calc()函数是css中最常用的函数之一,它可以用来计算css属性值中的数学表达式,比如:

div {
   
    width: calc(100% - 20px);
}

上面的代码中,div的宽度为100%减去20px的值,通常情况下我们在布局时,在部分元素宽度或高度不确定,或者需要根据屏幕宽度自适应时,我们会使用calc()函数来计算元素的宽度或高度。

calc()可以使用的运算符有:

  • +
  • -
  • *
  • /
  • % 取余
  • () 括号

calc()函数还可以使用css变量,比如:

:root {
   
    --width: 100px;
}

div {
   
    width: calc(var(--width) * 2);
}

calc()函数还可以使用calc()函数,比如:

div {
   
    width: calc(calc(100% - 20px) / 2);
}

2. min()max()

min()函数可以用来计算多个值中的最小值,比如:

div {
   
    width: min(100px, 50%);
}

max()函数可以用来计算多个值中的最大值,比如:

div {
   
    width: max(100px, 50%);
}

通常情况下,我们会使用min()max()函数来限制元素的最大或最小宽度、高度,比如:

div {
   
    width: max(100px, 50%);
    max-width: 200px;

    height: min(100px, 50%);
    max-height: 200px;
}

上面的代码中,div的宽度和高度都限制在200px以内,但是div的宽度和高度不能小于100px

3. clamp()

clamp()函数可以用来限制一个值的范围,比如:

div {
   
    width: clamp(100px, 50%, 200px);
}

上面的代码中,div的宽度限制在100px200px之间,但是div的宽度不能小于50%

这个函数的参数有三个,第一个参数是最小值,第二个参数是默认值,第三个参数是最大值。

4. attr()

attr()函数可以用来获取元素的属性值,比如:

<div data-width="100px"></div>
div {
   
    width: attr(data-width);
}

上面的代码中,div的宽度为100px

注意: attr() 理论上能用于所有的 CSS 属性但目前支持的仅有伪元素的 content 属性,其他的属性和高级特性目前是实验性的,也就是我上面的代码是不起作用的。

attr()的作用案例可以参考我之前写的文章:css的属性选择器的妙用,来用它实现一个轻量的tips组件吧

5. var()

var()函数可以用来获取css变量的值,比如:

:root {
   
    --width: 100px;
}

div {
   
    width: var(--width);
}

上面的代码中,div的宽度为100px

var()函数还可以设置默认值,比如:

:root {
   
    --width: 100px;
}

div {
   
    width: var(--height, 200px);
}

上面的代码中,div的宽度为200px

6. env()

env()函数可以用来获取环境变量的值,比如:

div {
   
    width: env(safe-area-inset-left);
}

它的用法和var()函数类似,但是它的值是由浏览器提供的,而不是由开发者提供的。

目前,env()函数只支持safe-area-inset-leftsafe-area-inset-rightsafe-area-inset-topsafe-area-inset-bottom这四个环境变量。

safe-area-inset-leftsafe-area-inset-rightsafe-area-inset-topsafe-area-inset-bottom这四个环境变量分别表示安全区域的左、右、上和下的内边距。

7. url()

url()函数可以用来获取图片的地址,比如:

div {
   
    background-image: url(./img.png);
}

这个函数用于获取资源地址,比如图片、字体等。

目前支持的属性有:

  • background-image
  • cursor
  • list-style-image
  • border-image-source
  • mask-image
  • ...任意可以使用图片的属性
  • content
  • @font-face
  • ...很多,目前常用的大概就这些

8. image-set()

image-set()函数可以用来设置图片的srcset,比如:

div {
   
    background-image: image-set(url(./img.png) 1x, url(./assets/img.png) 2x);
}

这里的1x2x是指图片的分辨率,1x表示1倍2x表示2倍

通常用于跨设备的适配,比如retina屏幕。

结束

本文主要介绍了css中的函数,包括calc()min()max()attr()var()env()url()image-set()这八个函数。

css中还有很多函数,但是没有上面这些函数常用,感兴趣可以作为拓展自行学习。

参考

目录
相关文章
|
3月前
|
前端开发
css【详解】cubic-bezier()函数
css【详解】cubic-bezier()函数
42 2
|
3月前
|
前端开发
css【详解】steps()函数
css【详解】steps()函数
19 1
|
4月前
|
前端开发 文件存储 Python
【已解决】Flask当中render_template函数使用过程当中css文件无法正常渲染
【已解决】Flask当中render_template函数使用过程当中css文件无法正常渲染
117 1
|
5月前
|
移动开发 JavaScript 前端开发
原生JavaScript+CSS实现计算器(简单的介绍一下eval函数)
原生JavaScript+CSS实现计算器(简单的介绍一下eval函数)
56 0
|
前端开发 JavaScript
html中href和src的区别?CSS 中哪些属性可继承,哪些不可以?创建函数的几种方式?
href:href 是 Hypertext Reference 的缩写,表示超文本引用。用来建立当前元素和文档之间的链接。常用的有:link、a。
|
前端开发 数据可视化
漏刻有时数据可视化Echarts组件开发(1):报警状态组件CSS代码及封装函数
漏刻有时数据可视化Echarts组件开发(1):报警状态组件CSS代码及封装函数
57 0
|
JSON 前端开发 JavaScript
CSS样式表在javascript函数中的写法
CSS样式表在javascript函数中的写法
60 0
|
前端开发 安全 测试技术
深入了解 CSS 中的 :where() 和 :is() 函数
深入了解 CSS 中的 :where() 和 :is() 函数
深入了解 CSS 中的 :where() 和 :is() 函数
|
前端开发 JavaScript
css3的attr函数使用,加载unicode图标
阿里矢量图标在项目中都用使用,通常一般我们引入css使用iconfont,或者我们使用svg加载图标,亦或我们可以使用Unicode,除了第一种与第二种
221 0
css3的attr函数使用,加载unicode图标