Me pregunto si alguien puede poner un poco de un resumen de referencia autorizado de cuando la declaración importante en CSS hace no trabajo para anular estilos en línea.¿Cuándo no funciona la declaración importante de CSS?
Respuesta
Hay muchos factores involucrados en determinar qué estilos se anulan entre sí. Cuanto más baja aparezca una declaración de estilo en la cascada , y más específica está dirigida al elemento, más pesará frente a otros estilos.
Esta es la herencia de estilos para CSS2 standard:
- Si los resultados de la cascada en un valor, lo utilizan.
- De lo contrario, si la propiedad es heredada, use el valor del elemento padre , generalmente el valor calculado.
- De lo contrario, utilice el valor inicial de la propiedad. El valor inicial de cada propiedad se indica en la definición de la propiedad .
Internamente, el navegador calculate the specificity of a rule, de acuerdo con la norma. ! La importante declaración se añaden peso a la regla, pero dinámicamente la asignación de un atributo de estilo a menudo tienen prioridad, ya que suele ser más altamente especifica ..
Estoy bastante seguro de que no todos los navegadores reconocen la importante declaración. Pero no puedo recordar cuáles salen de mi cabeza. Lo comprobará y le responderé.
[EDIT] Puedo confirmar que IE6 y anteriores no reconocen! Important (a menos que el navegador esté en modo de cumplimiento de normas, no es el predeterminado).
Puede utilizar! Importante para anular una regla en línea. ¡Pero también recuerde que las reglas en línea pueden ser etiquetadas! Importantes también.
Bueno hasta ahora la investigación parece sugerir:
- IE7 admite! Importante.
- Compatible con FireFox 2 y 3! Important.
- IE6 admite! Importante en el modo compatible con los estándares.
Sin embargo, Internet Explorer 6 (posible IE7) no soporta importante en this case:
someselector {
property: value !important;
same-property: another-value;
}
usará el segundo valor (la última lista).
Esto se confirma por this page:
En Internet Explorer 6 y anteriores, si aparece una importante declaración antes de una declaración normal para la misma propiedad dentro del mismo bloque de declaración , lo normal declaración sobrescribirá la declaración importante .
Internet Explorer 6 y 7 dan importancia a una declaración cuando un identificador ilegal se utiliza en lugar de la palabra clave importante, en lugar de haciendo caso omiso de la declaración ya que debería.
El comentario de Gizmo indica que el soporte de Safari y Opera es importante.
- 1. css menos declaración no reconocida
- 2. Una línea si la declaración no funciona
- 3. ¿Qué significa! Importante en CSS?
- 4. Cuándo cerrar la declaración preparada
- 5. CSS importante no parece trabajar en jQuery/Firefox 3.x
- 6. Ágil: ¿Cuándo funciona bien y cuándo no?
- 7. ¿Cuándo fue la última revisión importante de JavaScript?
- 8. La herencia de IE7 CSS no funciona
- 9. cuándo utilizar la declaración sobre la declaración preparada?
- 10. consultas de medios CSS y! Importante
- 11. La declaración SQL no me gusta no funciona
- 12. IE10 - La animación CSS no funciona
- 13. La propiedad CSS min-width no funciona
- 14. La regla CSS más específica no funciona
- 15. IE ignora! Etiqueta importante en css
- 16. Anulación! Importante con CSS o jQuery
- 17. css background-position no funciona
- 18. ¿Debo evitar usar! Importante en CSS?
- 19. CSS max-height no funciona
- 20. Elipsis HTML/CSS (...) No funciona
- 21. ¿Por qué esta declaración no funciona
- 22. ¿Cómo se puede eliminar una propiedad importante de CSS?
- 23. Comprobar si la propiedad CSS tiene atributo importante aplicada
- 24. Pantalla CSS: la altura mínima de la tabla no funciona
- 25. ¿El CSS válido es "importante"? (El jQuery UI CSS no valida.)
- 26. Razor en línea si la declaración no funciona?
- 27. Cancelar una declaración de CSS
- 28. Animación de visibilidad CSS No funciona
- 29. opacidad de css no funciona en IE7
- 30. z-index de CSS no funciona
Bueno, un atributo de estilo asignado dinámicamente * es * sobrescrito por! Importante en IE7, IE6 y FF2 en este momento, por lo que tengo curiosidad (se desea ser así, solo curiosidad :-)) –
Mira los estilos , y vea cómo pesan según el estándar. – keparo
Tengo style = "display: none;" frente a div # id div {display: block! important; }. Este último gana. http://www.w3.org/TR/CSS2/cascade.html#important-rules puede ser de algún interés. –