css变量基本操作
1. html中css变量写法
<div style="--color: #ccc;"> <span style="border: 1px solid var(--color);"> </div> <ul> <li style="--i:1"></li> <li style="--i:2"></li> <li style="--i:3"></li> </ul>
2. js读写css变量
//读 box.style.getPropertyValue('--color').trim(); getComputedStyle(box).getPropertyValue('--color').trim() //写 box.style.setProperty('--color','green'); //删除 box.style.removeProperty('--color');
3. css变量拼接和转换
3.1 如果变量都是字符串,可以直接拼接
:root{ --text-one:'hello'; --text-two:'world' } .box:after{ content: var(--text-one)' 'var(--text-two); }
3.2 变量和单位不能直接拼接
:root{ --size-one:14; } .box{ font-size:var(--size-one)px; /**无效**/ }
计算结果将是
font-size: 14 px; //此时root会使用默认的字体大小,而不是14px
由上可知,变量和单位直接拼接会多出一个空格,正确的拼接方式是借用calc()函数,进行计算
font-size:calc(var(--size-one)*1px);
当然,calc也可以用作CSS变量值当中
--size:calc(20px * 2) 或者 --size: 40px
3.3 利用css计算器将数值变量转换为字符串
.pie { --p: 25; } .pie:after { counter-reset: p var(--p); content: counter(p) '%'; }
4. css变量可以是任意值
css变量可以是任意值,包括任意css片段,js片段,无论是否为合法属性值,都可以
:root{ --margin-top: calc(2vh + 20px); --foo: if(x > 5) this.width = 10; }
参考: 跟我一起全面了解一下CSS变量
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2023-01-23 mac安装homebrew过程
2023-01-23 mac终端bash配置优化
2023-01-23 mac在线恢复系统过程
2018-01-23 性能优化-合成层