2011-04-06 13 views
5

Tengo un enlace que es un botón de estilo de IU de Jquery. Cuando configuro disabled="disabled" ie8 representa el texto con una sombra blanca. No puedo decir de dónde está obteniendo este estilo. He inspeccionado la etiqueta <a>, y hay dos hijos <span> con herramientas dev y no hay estilos que parezcan estar relacionados con esto.jquery ui botón desactivado sombra de texto no deseado en IE

También busqué en la hoja de estilos de la UI las propiedades filter: o dropshadow, pero lamentablemente no hubo ninguna.

También probé anulando el estilo a pesar de que no podía estar seguro de dónde venía, con:

a.ui-state-disabled { 

color:black !important; 

} 

Pero fue en vano. ¿Alguna sugerencia?

+0

Podría publicar un ejemplo de trabajo en http://www.jsfiddle.net? –

+0

Buena idea: http://jsfiddle.net/fnwjT/2/ –

+0

¿De dónde sacas la clase 'ui-state-disabled' ?? alerté a las clases que tiene el botón, y la única clase que ha asignado es 'button' ... –

Respuesta

7

Esto no tiene nada que ver con jquery-ui. IE agrega su propio estilo a los enlaces con el atributo disabled = "disabled". No puede ser anulado.

1

Adripants es right.It no puede ser cambiada, pero hay otra manera de hacerlo:

Primero: Añadir su estilo desactivar personalizado a su estilo css

a.disabled { 
    color:black; 
} 

Entonces : Quitar el atributo "desactivado" y añadir la clase personalizada sólo para IE

<!--[if IE]> 
<script type="text/javascript"> 
    $(function() { 
     $("a:disabled, a[disabled='disabled']").addClass("disabled").removeAttr("disabled"); 
    }); 
</script> 
<![endif]--> 
+1

También debería considerar agregar un atributo de solo lectura como este: '$ (" input: disabled "). AddClass (" disabled "). RemoveAttr (" disabled "). Attr (" readonly "," readonly ");' – slu

1

y ou puede hacer una cosa:

<button class="disabled" onmousedown="return checkDisable();"> 

function checkDisable() { 

     if($(this).hasClass('disabled') { return false;} 
} 
+0

Esto es terrible para la accesibilidad ya que el botón aparece habilitado para un lector de pantalla, pero no hace nada. No hagas esto. – lazd

Cuestiones relacionadas