Capa sobre un combo
7 seguidores
Hola a todos.
Tengo una página en la que una capa debe aparecer sobre un formulario. El problema es que los select (combos) no respetan el z-index y se "asoman" en la capa, en vez de quedarse por debajo como el resto del formulario.
Por cierto, el problema sólo me ocurre en IE. En Firefox, perfecto.
¿Alguien conoce alguna solución?
Mil gracias y saludos!
hartum
que yo sepa, no s epuede hacer, lo unico que permanece por encima de los combos , son los flash, valiente putada :-P
zigotica
http://www.webreference.com/dhtml/diner/seethru/
la solucion mas facil es esconder la capa que contenga al formulario cuando la otra pase por encima.
MiguelSánchez
Genial!! Con lo de ocultar el combo me conformo :) ¡¿Cómo no se me había ocurrido?!
Muchísimas gracias!
txuma Plus
uffffff... como empezaba a echar de menos la magia de estas respuestas :P
zigotica
PAREN UDS. O AMENAZO CON SONROJARME :)
A partir de ahora van a haber pocas respuestas, digamos que mi tiempo libre ha disminuido drasticamente. para bien, espero.
saludos a todos, en un par de dias estare en casa operativo a tope.
sole
Yo fui más bruta... cuando muestro alguna capa que no debe ser "molestada" por un combo ... recorro el árbol DOM del documento y oculto todos los elementos de formulario.
Sin piedad!!
cbp
dios, una radical del DOM !!! qué bruta !!!! :P
MiguelSánchez
Para brutos los de Microsoft que permiten que, en la versión 6 de su navegador, un elemento que debería permanecer en z-index:0 aparezca donde le da la gana. Y bajé la 6.05 que van a meter en el service pack 2 y más de lo mismo...
zigotica
a ver...
Miguel, creo que el comportamiento no es un error, en mi opinion esta bien que un formulario no pueda tener nada encima, por cuestiones de seguridad.
Sole, ¿no seria mas facil usar el array document.forms? ejemplo:
<code> for(a=0;a<document.forms.length;a++){
document.forms[a].style.display = "none";
}
</code>o si me apuras un id y esconder solamente ese formulario. Recorrer todo el arbol me parece excesivo.
albertoromero
Buenas, yo conozco 2 soluciones que funcionan:
1. Los iframes sí se superponen a los combos, así que puedes crear un iframe vacío, con visibility:hidden, y posicionarlo en el mismo lugar que la capa que quieres que se vea (con el contenido bueno).
2. Con el ingenioso IE Select Box Z-Index Hack, crear un combo ActiveX, esconder el combo real, y pasarle los valores mediante un input vacío.
Además, con esta opción, tienes combos 100% customizables :)
Espero que te ayude.
hartum
denegro
Además, con esta opción, tienes combos 100% customizables :)
y solo utiles para explorer :-P pero vamos nunca esta de mas saberlo
sole
zigotica
a ver...
Miguel, creo que el comportamiento no es un error, en mi opinion esta bien que un formulario no pueda tener nada encima, por cuestiones de seguridad.
Sole, ¿no seria mas facil usar el array document.forms? ejemplo:
<code> for(a=0;a<document.forms.length;a++){
document.forms[a].style.display = "none";
}
</code>o si me apuras un id y esconder solamente ese formulario. Recorrer todo el arbol me parece excesivo.
Seguro, pero fue un momento de crisis y de jefe diciendo "quieroquedesaparezcaeseerrorya!!!".
Luego lo pensé, pero qué se le va a hacer O : )
Lástima que los jefes no entiendan esas limitaciones de los navegadores por cuestiones de seguridad. A mí me tienen harta!