tailwindcss暗色主题切换

globals.css:

增加一行代码:@custom-variant dark (&:where(.dark, .dark *));

css 复制代码
@import "tailwindcss";
@custom-variant dark (&:where(.dark, .dark *));

:root {
  --background: #ffffff;
  --foreground: #171717;
}

@theme inline {
  --color-background: var(--background);
  --color-foreground: var(--foreground);
  --font-sans: var(--font-geist-sans);
  --font-mono: var(--font-geist-mono);
}

@media (prefers-color-scheme: dark) {
  :root {
    --background: #0a0a0a;
    --foreground: #ededed;
  }
}

body {
  background: var(--background);
  color: var(--foreground);
  font-family: Arial, Helvetica, sans-serif;
}
javascript 复制代码
				<div>
					<div className="text-2xl font-medium">主题切换:</div>
					<div className="m-4">
						<Switch value={isDark} onChange={(e) => handleIsDarkChange(e)} />
					</div>
					<div className={isDark ? 'dark' : ''}>
						<div className="rounded-lg bg-white px-6 py-8 shadow-xl ring ring-gray-900/5 transition-all duration-500 dark:bg-gray-800">
							<h3 className="text-base font-medium tracking-tight text-gray-900 dark:text-white">
								Hello world
							</h3>
							<p className="mt-2 text-sm text-gray-500 dark:text-gray-400">Hello world</p>
						</div>
					</div>
				</div>

增加样式名dark后,会用自动应用上className中dark:后的样式

相关推荐
朦胧之10 小时前
AI 编程-老项目改造篇
java·前端·后端
swipe12 小时前
从 0 到 1 实现大文件上传:分片、秒传、断点续传、暂停、重试与服务端合并
前端·javascript·面试
爱勇宝13 小时前
我做了一个只用来搜歌词的小 App
android·前端·后端
甲维斯13 小时前
用AI还原《坦克大战》并3D化升级!
前端·人工智能·游戏开发
IT_陈寒14 小时前
SpringBoot自动配置坑了我一晚上,原来问题出在这
前端·人工智能·后端
kyriewen14 小时前
AI 生成的代码能跑就行?这 5 个坑迟早炸
前端·javascript·ai编程
kisshyshy14 小时前
🍦 雪糕、食堂、火车厢:三幅漫画吃透栈、队列与链表
javascript·算法
谷子在生长14 小时前
纯血鸿蒙自定义弹窗最佳实践:从「到处复制」到「一行调用」
前端·harmonyos
壹方秘境14 小时前
我用Go语言开发了一个跨平台的HTTPS抓包和调试工具
前端·后端·ios
神秘面具男14 小时前
HarmonyOS 6.0跨端远程控制
前端·后端