Мне нужно динамически применить некоторые CSS custom properties в :root{} Как я могу это сделать? Заранее,спасибо
:root - это глобальная область видимости, поэтому нужно такое делать вручную:
import { Inject, Renderer2 } from '@angular/core';
import { DOCUMENT } from '@angular/platform-browser';
class Component {
constructor(@Inject(DOCUMENT) private document: Document, private renderer: Renderer2) {
this.renderer.setStyle(this.document.documentElement, 'background', 'red');
}
}
А еще лучше вариант - это не писать стили вручную, а объявить просто класс в styles.scss:
:root {
&.some-class {
background-color: red;
}
}
В компоненте можно делать toggle класса по определенному условию:
this.document.documentElement.classList.toggle('some-class');
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости