2008-09-19 9 views

Respuesta

66

Puede añadir !important hasta el final de su estilo, de esta manera:

element { 
    overflow: hidden !important; 
} 

Esto es algo que no debe confiar en que normalmente, pero en su caso que es la mejor opción. Cambiar el valor en Javascript se desvía de la mejor práctica de separar el marcado, la presentación y el comportamiento (html/css/javascript).

+0

Especialmente útil para evitar los errores de IE 7,8 css – tmanthey

0

Hasta donde yo sé, los estilos en los elementos HTML actuales anulan cualquier cosa que pueda hacer en un estilo CSS separado.

Sin embargo, puede utilizar Javascript para anularlo.

9

¿Ha intentado configurar !important en el archivo CSS? Algo así como:

#mydiv { overflow: hidden !important; } 
4

No estoy seguro si esto iba a funcionar o no, no se han probado con overflow.

overflow:hidden !important 

tal vez?

2

Si el div tiene una declaración de estilo en línea, la única manera de modificarlo sin cambiar la fuente es con JavaScript. El estilo en línea atribuye 'ganar' cada vez en CSS.

+0

cómo se hace eso para todos los hijos de un elemento de forma recursiva? – qed

2

Magnar es correcto según lo explicado por la especificación W3C pegada a continuación. Parece que se agregó la palabra clave! Important para permitir a los usuarios anular incluso la configuración de estilo "horneada" en el nivel del elemento. Dado que se encuentra en una situación en la que no tiene control sobre el html, esta puede ser su mejor opción, aunque no sería un patrón de diseño normal.

W3C CSS Specs

Extracto:!

6.4.2 reglas importantes CSS intenta crear un equilibrio de poder entre el autor y el estilo de usuario hojas. De forma predeterminada, las reglas en una hoja de estilo del autor anulan las de hoja de estilo del usuario (consulte la regla de cascada 3).

However, for balance, an "!important" declaration (the keywords 

"!" e "importante" siga la declaración ) tiene prioridad sobre una declaración normal . Tanto el autor como las hojas de estilo del usuario pueden contener declaraciones "! Important" y las reglas "! Important" del usuario anulan las reglas "! Important" del autor . Esta función CSS mejora la accesibilidad de los documentos por dando a los usuarios con requisitos especiales (fuentes grandes, combinaciones de colores, etc.) control sobre la presentación.

Note. This is a semantic change since CSS1. In CSS1, author 

"!importantes" reglas de precedencia sobre el usuario "! important" reglas.

Declaring a shorthand property (e.g., 'background') to be 

"! important" es equivalente a declarar todos sus sub-propiedades a ser "! important".

Example(s): 

The first rule in the user's style sheet in the following example 

contiene una declaración "! Important", que anula la declaración correspondiente en la hoja de estilos del autor . La segunda declaración también será que se marcará como "! importante". Sin embargo, la tercera regla en la hoja de estilo del usuario no es "! Important" y perderá por lo tanto a la segunda regla en la hoja de estilo del autor (que establece el estilo en una propiedad abreviada). Además, la regla del tercer autor perderá la regla del segundo autor ya que la segunda regla es "! Important". Esto muestra que las declaraciones "! Important" de tienen una función también dentro de las hojas de estilo de autor .

/* From the user's style sheet */ 
P { text-indent: 1em ! important } 
P { font-style: italic ! important } 
P { font-size: 18pt } 

/* From the author's style sheet */ 
P { text-indent: 1.5em !important } 
P { font: 12pt sans-serif !important } 
P { font-size: 24pt } 
Cuestiones relacionadas