我们在html
-element 上使用一个类来确定用户是否处于应用程序中dark
或light
模式。
<html class="dark-mode"></html>
此类是Renderer2
在检测用户所选设置的服务中添加的。到目前为止,这工作正常。
现在,我们必须调整所有组件,使其在黑暗模式下也看起来不错。但问题是 Angular 的ViewEncapsulation
.
我们认为会派上用场的是简单地更新组件的 SCSS:
.headline {
color: black;
.dark-mode & {
color: white;
}
}
或者在纯 CSS 中:
.headline {
color: black;
}
.dark-mode .headline {
color: white;
}
现在这不起作用,因为该类.dark-mode
似乎已按预期进行了封装。
我们如何解决这个问题?