¿Selector de CSS para no un elemento secundario del tipo de elemento?


81

Quiero diseñar codeelementos que no estén dentro de aetiquetas.

¿Cuál es el mejor enfoque para lograr esto?

code:not(a code)no parece funcionar en absoluto, al menos en Chrome, aunque parece que debería

Tampoco puedo hacer que funcione desde la consola.

¿Hay otros enfoques de solo CSS que pueda usar para esto?

Respuestas:


117

:not no admite selectores de combinador.

Si estamos hablando de su padre directo:

:not(a) > code

De lo contrario, no hay forma de hacer esto en CSS. Tendrá que anularlo:

code {
    /* some styles */
}

a code {
    /* override previous styles */
}

el problema es que no quería usar un selector de estrellas
bevacqua

9
Por curiosidad: no tengo idea de por qué, pero :not(a) > codefuncionó, mientras :not(a) codeque no lo hice, ¿alguna idea de por qué? (todavía cromado)
bevacqua

34
@Nico - Porque :not(a) codebusca cualquier antepasado que no sea an a, lo cual siempre es cierto. :not(a) > codesolo mira al padre inmediato.
Joseph Silber

Jackpot, debería haberlo pensado.
bevacqua
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.