Olá!
Por muito tempo, ao passar o mouse sobre os ícones do meu site, eles ficavam cinzas, apesar de eu ter substituído a cor por uma personalizada (um azul claro):

Por causa deste CSS do Discourse:
.discourse-no-touch .d-header-icons .icon:hover .d-icon, .discourse-no-touch .d-header-icons .icon:focus .d-icon {
color: #919191;
}
O azul claro funcionou no início, e acho que parou de funcionar após uma atualização do Discourse, e eu não olhei isso por talvez um ano.
Então, atualizei para a versão 2.9.0 muito recentemente (eu atualizo toda vez que a interface me avisa, e às vezes um pouco mais), e a cor personalizada que eu havia definido voltou sozinha, como mágica ![]()

No entanto, agora percebo que a cor cinza voltou novamente
![]()
É possível que eu tenha atualizado o Discourse novamente nesse meio tempo.
De qualquer forma, não sei por que a cor certa voltou e desapareceu novamente, já que não editei o CSS do meu fórum.
Então, aqui está a ordem atual das regras CSS:
Eu quero meu azul claro de volta. ![]()
Meu CSS personalizado atual:
.d-header-icons .d-icon {
color: white;
}
.d-header-icons .icon:hover, .d-header-icons .icon:focus {
background: white;
}
.d-header-icons .icon:hover .d-icon, .d-header-icons .icon:focus .d-icon {
color: var(--tertiary-medium);
}
.drop-down-mode .d-header-icons .active .icon .d-icon {
color: var(--tertiary);
}
Prefiro não usar !important quando posso fazer de outra forma, e muitas vezes tenho problemas para substituir o CSS do Discourse de forma simples por causa da classe pai .discourse-no-touch, que me obriga a criar uma verdadeira fila
de seletores para atingir meu objetivo.
-
Alguma ideia de por que meu override de cor funcionou novamente por alguns dias e depois não mais?
-
Como substituir corretamente as classes do Discourse com esse irritante bisavô
.discourse-no-touch?
Nota: A cor azul funciona em smartphones. Existe uma regra de destino simples para fazer com que as alterações de CSS afetem dispositivos com e sem toque?

