⚡ 编程实验室🏗️ HTML🎨 CSS⚡ JavaScript🐍 Python🗄️ SQL☕ Java⚛️ React💚 Vue🟢 Node.js⚙️ C语言🐘 PHP🐹 Go🔷 TypeScript🐬 MySQL🔧 C++🎯 C#🦀 Rust🅱️ Bootstrap💡 jQuery🎸 Django🍃 MongoDB👗 Sass🎪 Kotlin📊 R语言📋 XML📊 Excel🐘 PostgreSQL🐳 Docker🅰️ Angular🎮 游戏🏠 网站首页

CSS 自定义属性实战

从基础到动态主题切换,掌握 CSS 自定义属性的声明、继承与运行时修改。 · 难度:入门 · +15XP

什么是 CSS 自定义属性?

CSS 自定义属性(Custom Properties,也称为 CSS 变量)允许你在样式表中定义可复用的值,并通过 var() 函数在任何地方引用。它们拥有真实的级联与继承特性,且可以在运行时通过 JavaScript 动态修改,这是预处理器变量无法做到的。

声明与使用

使用 -- 前缀声明自定义属性,通常放在 :root 中使其全局可用。通过 var() 函数读取,并可以指定后备值。

:root {
  --primary-color: #3498db;
  --base-padding: 16px;
}

.button { background-color: var(--primary-color); padding: var(--base-padding, 12px); /* 后备值 12px */ color: white; border: none; cursor: pointer; }

继承与作用域

自定义属性遵循 CSS 级联规则。在某个元素上重新声明同名属性,只会影响该元素及其后代。

选择器--theme 的值可用范围
:rootlight全局
.dark-sectiondark该区域及其子元素
.dark-section {
  --theme: dark;
  --bg-color: #222;
  --text-color: #eee;
}

.card { background: var(--bg-color); color: var(--text-color); }

动态修改:JavaScript 交互

这是自定义属性最强大的特性之一。通过 setProperty 方法,可以实时更新样式。

document.documentElement.style.setProperty('--primary-color', '#e74c3c');

最佳实践与技巧

尝试在右侧编辑器中修改 :root 中的颜色变量,观察按钮颜色的变化。

Ctrl+Enter
🚀 升级VIP
解锁全部课程+AI助手

🏆 学习排行

加载中...

📊 统计

📖 122 篇
0 完成
🔥 0