Tenho um código JavaScript que precisa ser usado para estilizar todo um documento HTML renderizado. O que uso atualmente é o seguinte CSS:
[myattr="true"] { direction: rtl; }
[myattr="false"] { direction: ltr; }
além de definir um atributo no elemento do documento:
doc.documentElement.setAttribute('myattr', true);
Mas, por motivos (que não deveriam ser relevantes), quero que o CSS estilize o :root
pseudoelemento, não o <html>
elemento. Minha pergunta é: como posso selecionar :root
com base no valor do atributo? Não é como se eu pudesse definir o atributo em :root
si mesmo, já que ele não faz parte do DOM.
Em um documento HTML, o
:root
seletor CSS representa a<html>
tag, que é a raiz do documento HTML ( MDN ).Qualquer atributo que você definir no elemento HTML
:root
também pode ser usado para selecionar o elemento: