当前位置: 首页 > article >正文

css中的变量使用

CSS 变量(也称为自定义属性)允许你在 CSS 中定义可重用的值。这些变量可以在整个样式表中使用,并且可以动态更新。

1. 定义和使用 CSS 变量
定义变量

在 CSS 中,变量使用 -- 前缀来定义。通常在 :root 选择器中定义全局变量,以便在整个文档中使用。

:root {
  --primary-color: #1e90ff;
  --font-size: 16px;
}
使用变量

使用 var() 函数来引用变量。

body {
  background-color: var(--primary-color);
  font-size: var(--font-size);
}
2.局部变量

局部变量在特定的选择器中定义,只在该选择器及其子选择器中有效。


.button {
  --button-color: #ff4500; /* 局部变量 */
  background-color: var(--button-color);
  color: white;
  padding: 10px 20px;
}

.button:hover {
  background-color: darken(var(--button-color), 10%); /* 使用局部变量 */
}
3.动态更新变量(setProperty)

CSS 变量可以通过 JavaScript 动态更新,从而实现动态样式变化。

<div id="app" style="--primary-color: #1e90ff;">
  <p>这是一个段落。</p>
</div>

<button onclick="changeColor()">改变颜色</button>

<script>
function changeColor() {
  document.getElementById('app').style.setProperty('--primary-color', '#ff4500');
}
</script>

总结

  • 定义变量:使用 -- 前缀在 CSS 中定义变量。
  • 使用变量:使用 var() 函数引用变量。
  • 全局变量:在 :root 选择器中定义,可在整个文档中使用。
  • 局部变量:在特定的选择器中定义,只在该选择器及其子选择器中有效。
  • 动态更新:可以通过 JavaScript 动态更新 CSS 变量,实现动态样式变化。

CSS 变量可以在任何选择器中定义,不一定要写在 :root 里面。:root 是一个伪类,表示文档的根元素(通常是 <html> 元素),因此在 :root 中定义的变量是全局可用的。 

但是. :root 是一个标准的 CSS 伪类,表示文档的根元素,:root 这个 root 是固定的,并不是可变的。


http://www.kler.cn/a/389966.html

相关文章:

  • uniapp使用scroll-view下拉刷新与上滑加载
  • Linux 系统管理和监控命令---- auditctl命令
  • 时间管理的三个痛点
  • 【Linux】TCP原理
  • 云原生-docker安装与基础操作
  • 矩阵的各种计算:乘法、逆矩阵、转置、行列式等——基于Excel实现
  • kafka分区中的ISR、OSR、AR 是什么?
  • Flink使用SQL Gateway提交SQL Job到远程集群
  • 【单例模式】饿汉式与懒汉式以及线程安全
  • 大数据技术在金融风控中的应用
  • 我的生活记(dz-cn)
  • 【CentOS】中的Firewalld:全面介绍与实战应用(下)
  • 论文阅读分享:基于弱监督的病理图像腺体分割
  • 现代Web开发:WebSocket 实时通信详解
  • C语言命令行参数解析:getopt函数实战指南及高级应用解析
  • mysql5常用命令(一)
  • centos7 arm版本编译qt5.6.3详细说明
  • 图形几何之美系列:仿射变换矩阵之先转后偏
  • QtLua
  • 容器技术在DevOps中的应用
  • 【unity】unity2021 URP管线下 SceneView没有MipMaps选项了怎么办?扩展Rendering Debugger工具
  • 单位正交矢量的参数化,用于特征矢量对厄尔米特矩阵对角化使用
  • PyQt5实战——翻译的实现,成功爬取微软翻译(可长期使用)经验总结(九)
  • R 语言数据分析常用操作指令
  • vue中调用全屏方法、 elementUI弹框在全屏模式下不出现问题、多级嵌套弹框蒙层遮挡问题等处理与实现方案
  • Elasticsearch实战应用:从入门到精通