2012-01-27 20 views
5

Estoy trabajando con un software de terceros completamente horrible y la necesidad de sobrescribir su estilo CSS a través de un archivo CSS externo.Cómo anular el borde: ninguno?

Han establecido border: none en todos los campos de formulario, pero me gustaría que los campos de entrada solo usen el estilo predeterminado del navegador.

¿Cómo puedo anular border: none para que los campos de formulario tengan el estilo como si no se hubiera establecido ninguna propiedad border?

+1

Existe la anulación '! Important' si realmente quiere forzar un estilo en algo. –

Respuesta

2

Diseñe las excepciones como border: inherit.

Esto anulará la regla de borde más reciente.

-1

Suponiendo que no son de peinado los campos de entrada en línea:

input { 
    border: 1px solid #999 !important; 
} 
+0

+1 para la información sobre inline. Sin embargo, el OP dijo que querían recuperar las fronteras predeterminadas. –

-1

Por desgracia, hay de ninguna manera en CSS se puede decir que se apliquen los valores predeterminados del navegador. Por ejemplo, si alguna regla CSS establece un borde en un elemento, entonces no puede decir "ignorar esa regla"; solo puedes establecer tu propia regla que la anule (si defines tu regla para que gane en la cascada).

En la práctica, la siguiente crea una frontera que está cerca de los valores por defecto de los navegadores más populares:

input { border: solid 1px #ddd; border-top-color: #aaa; padding: 2px; } 

Es posible que tenga que modificar el selector (o incluso utilizar !important) con el fin de ganar una configuración en otro hoja de estilo