keywords google etiquetas ejemplos attribute html css developer-tools web-inspector

html - google - ¿Cómo determinas qué es lo que anula tu estilo?



meta tags seo (7)

Cuando juguetea con estilos de código de muestra, encuentro que el código tiene estilos que anularán mi estilo porque usarán una referencia de prioridad más alta (por ejemplo: .div .class > .class ).

Me encontraré con situaciones como esta:

¿Cómo puedo saber qué estilo está anulando mi estilo? Quiero evitar usar !important porque eventualmente terminaré en la misma situación.

EDIT: No estoy preguntando por qué esto está sucediendo. Ya sé de prioridad, por lo que mencioné que .div .class tiene una prioridad más alta que .class . Quiero rastrear lo que realmente se está utilizando en lugar de simplemente decirme que está "inactivo". Además, ya sé sobre Chrome Developer porque la captura de pantalla es de Chrome Developer.

EDITAR: se solucionó el problema real, pero la pregunta sigue siendo ... ¿hay una manera más fácil de ver qué causa la anulación?

Solución: Solo necesitaba el selector en el orden correcto. .box primero, luego .box-blue .


Aquí hay una explicación simple.

Ciertos selectores anularán los existentes, por ejemplo

p { color: green; } .Paragraphs { color: yellow; } #paragraph2 { color: red; }

<p>Lorem Ipsum</p> <p class="Paragraphs">Lorem Ipsum</p> <p id="paragraph2" class="Paragraphs">Lorem Ipsum</p> <p class="Paragraphs" style="color: blue">Lorem Ipsum</p>

Como se muestra, el selector p se invalida con el selector .Paragraphs y el selector #agraph2 reemplaza .Paragraphs y el atributo de estilo se reemplaza con #agraph2 y, por supuesto, cualquier selector con! Important reemplazará casi todo.


En devtools, en el inspector de estilo, elija Computado. Encuentre la propiedad que le interesa y haga clic en ella. Verá una lista de todas las reglas que se aplican a esta propiedad, con la activa en la parte superior, y cada una con una referencia de archivo / línea donde se define.

Considere el siguiente HTML:

<style> #foo { color: red; } p { color: blue; } </style> <p id="foo">What color am I?</p>

Verías lo siguiente:


En las Herramientas para desarrolladores de Firefox, puede encontrarlo en un clic cerca de la propiedad anulada en el Inspector:

Declaraciones anuladas

A partir de Firefox 43, las declaraciones anuladas tienen una lupa junto a ellas. Haga clic en la lupa para filtrar la vista de reglas para mostrar solo las reglas que se aplican al nodo actual que intenta establecer la misma propiedad: es decir, la cascada completa para la propiedad dada.

Esto hace que sea fácil ver qué regla está anulando la declaración:

https://www.youtube.com/watch?v=i9mDVjJAGwQ

Así es como se ve. Mira el video para verlo en acción.


En su imagen puede ver el .box-blue del border-color: #bce8f1 la clase .box-blue border-color: #bce8f1 regla ha sido anulada por el border: 1px solid transparent (no puedo ver el selector). Puede ver los archivos CSS de las reglas CSS anuladas del lado derecho de los selectores en la herramienta Inspeccionar.

A veces las reglas de CSS pueden ser cambiadas por el JavaScript. Puede ser mostrado como CSS en línea.


Hay extensiones de navegador que ayudan con esto. Yo uso "Desarrollador Web" en Firefox, pero hay muchos otros.

Chrome también tiene Ver> Desarrollador> Herramientas de desarrollo.

Si pasa el mouse sobre un elemento en la pantalla, le dirán su ruta (html> body> div.blah> span.foo) y qué estilos de CSS se aplicaron a ese elemento.


No hay una forma definitiva de inferir qué selector anula un estilo dado (que yo sepa), pero la interfaz de las herramientas de desarrollo es lo suficientemente intuitiva como para que normalmente resulte sencillo resolverlo.

Su estilo de overriden se muestra con un golpe a través. Para saber qué selector lo anula, busque una versión sin estructura de la misma regla.

A veces esto es tan fácil como ver:

color: red;

Y tener que buscar un selector con:

color: blue;

Las herramientas de desarrollo de Chrome en realidad clasifican los selectores por prioridad, por lo que si encuentra un estilo anulado, se le puede garantizar que la anulación estará en el mismo selector o en uno de los que están arriba.

Pero tendrá que recordar que algunas reglas están compuestas por otras y no siempre encontrará una regla correspondiente con el mismo nombre . En su ejemplo, su regla de border-color está siendo anulada por la regla de border del selector anterior. La regla de borde es abreviada para especificar border-width border-style border-color .


Puede desplazarse hacia arriba o hacia abajo en la pestaña de estilos en las herramientas de desarrollo que usa en el ejemplo anterior para encontrar el selector que .box-blue . Una vez que haya encontrado el border-color habilitado en otro estilo, puede determinar qué selector lo anulará.

Cuando diseñó .box-blue con border-color: red por ejemplo, se podría anular con otro estilo con la misma propiedad, posiblemente border . Debido a que border: 1px solid blue podría ser una forma abreviada de border-width: 1px + border-style: solid + border-color: blue , entonces podría ser la posibilidad de anular el estilo anterior.