<head>
<style>
[theme="dark"]{
--status-colors-error: #C72929;
--input-label-color: #8E8F90;
--input-border-color-focus: #075FDB;
--input-background-color: white;
--input-border-color: #DBDEEA;
--input-disabled: #DBDEEA;
}
[theme="light"]{
...
}
.label{
color: var(--input-label-color);
}
</style>
</head>
<body id="theme" theme="dark" >
<p class="label">label</p>
</body>
通过js修改主题
<script>
document.getElementById('theme').setAttribute('theme', 'light')
</script>
属性选择器是一个很好用的选择器,vue的<style scope>
原理用的也是这个,<style scope>
原理会在下一篇博客介绍