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);
}
相关推荐
子兮曰8 小时前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰8 小时前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
前端小万8 小时前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序
爱勇宝8 小时前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
三十而立洋9 小时前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
卡布鲁9 小时前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
汉堡大王952711 小时前
Jev:不是聊天机器人, 而是一个智能 if 语句
前端·人工智能·后端
梦想很大很大11 小时前
从运行事实到回归证据:Workrun 的 Telemetry 与 Evaluation 实践
前端·人工智能·后端
计算机魔术师11 小时前
Meta Muse agent 接入 Shopify 的 Shop Pay 实现代理式购物
前端
沙蒿同学12 小时前
我用 Go 搭了一条 AI Agent 流水线:从 1 张商品图到一整套淘宝详情页
前端·javascript·后端