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!
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!
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
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.
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.
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...
cbp
dios, una radical del DOM !!! qué bruta !!!! :P
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!!
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.
txuma Plus
uffffff... como empezaba a echar de menos la magia de estas respuestas :P
MiguelSánchez
Genial!! Con lo de ocultar el combo me conformo :) ¡¿Cómo no se me había ocurrido?!
Muchísimas gracias!
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.
hartum
que yo sepa, no s epuede hacer, lo unico que permanece por encima de los combos , son los flash, valiente putada :-P