css-functions-属性函数

概述

本文主要介绍CSS Functions中和属性有关的函数varattrenv

使用方法可以参考示例:CSS-Functions:属性函数

自定义属性var

var()函数可以插入一个自定义属性CSS 变量的值,用来代替非自定义属性中值的任何部分。

自定义属性名必须是以--开头的任何有效标识符,var()函数可以接收多个参数,第二个参数及其后面的参数都可以作为回退值,即前面的参数无效,会依次使用后面的值,另外var()函数可以嵌套,如下示例

css 复制代码
div {
  width: var(--width, --node-width, 100px);
}
全局定义

var()函数可以使用在:root中定义的全局属性

css 复制代码
:root {
  --width: 100px;
}

div {
  width: var(--width, --node-width, 100px);
}
局部定义

var()函数为Javascript操作 CSS 样式提供了极为方便的方式,可以动态修改 CSS 变量应用到元素的样式上去,局部属性名的作用大于全局定义属性名的作用。我们可以将行内样式理解成局部属性定义,如下:

html 复制代码
<span style="--width:150px;"></span>

以上的属性--width会覆盖:root中定义的--width,这个时候 div 元素的--width取值还是:root中的100px

属性attr

目前attr函数仅能运用在伪类元素上,它会获取元素上的自定义属性值,如下

html 复制代码
<style>
  span:before {
    content: attr(data);
  }
</style>
<span data="Hello World"></span>

安全属性 env

env的应用没有前两个广,主要用于获取用户代理定义的环境变量,而不是用户自定义的,比如这几个环境变量

css 复制代码
p {
  padding: env(safe-area-inset-top) env(safe-area-inset-right) env(
      safe-area-inset-bottom
    ) env(safe-area-inset-left);
}
相关推荐
小碗细面4 分钟前
前端 Prompt 工程实战:如何搭建场景化 Prompt 库
前端·ai编程
阿瑞IT7 分钟前
2026年 AI Agent 生产化落地全景:四大高频故障根因分析与工程解法
前端
木木剑光13 分钟前
我开源了一个 React 组件库,沉淀了多个高频组件和实用 Hooks
前端·javascript·react.js
kyriewen16 分钟前
DeepSeek API 高峰时段涨价 2 倍,便宜大碗的时代要结束了?
前端·ai编程·deepseek
Moment44 分钟前
牛逼,NextJs 从 16.3 开始全面拥抱 Agent Native 🥰🥰🥰
前端·后端·面试
沸点小助手1 小时前
6月沸点活动获奖名单公示|本周互动话题上新🎊
前端·后端
Csvn1 小时前
React 19 `use()` 来了:以后数据加载可以不用 useEffect?
前端·react.js
没落英雄1 小时前
从零开始搭建一个 AI Agent —— LangChain + TypeScript 实战手记
前端·人工智能·架构
远航_1 小时前
git submodule
前端·后端·github
摸着石头过河的石头1 小时前
从 Webpack 到 RSBuild:前端构建工具的进化之路
前端