Salve.
Ho un semplice ma annoso problema con Internet Explorer e le trasparenze.
Devo fare una semplice transazione in trasparenza. Utilizzo una mia libreria javascript che ho fatto che dato un DIV (che chiameremo CONTAINER ), scandaglia i suoi figli ed innesca su di essi il ciclo che fa le transizioni cambiando i vari opacity, alpha filter ecc...
La funzione imposta ovviamente i DIV figli affinché abbiamo position absolute e top 0 in modo da sovrapporli uno sull'altro all'interno del DIV.
Il problema nasce però quando i figli di CONTAINER, hanno a loro volta dei DIV in assoluto. Questi NON intervengono nelle transizioni.
Es.
I Nipoti 12 e 22 non vengono coinvolti nella transazione con trasparenza nonostante il loro padre sia coinvolto (i nipoti 11 e 21 invece vengono coinvolti).codice:<div id="container"> <div id="figlio1" style="position:absolute;"> <div id="nipote11">Sono posizionato relativamente</div> <div id="nipote12">Sono posizionato assolutamente</div> </div> <div id="figlio2" style="position:absolute;"> <div id="nipote21">Sono posizionato relativamente</div> <div id="nipote22">Sono posizionato assolutamente</div> </div> </div>
Dato che su Firefox/Chrome la cosa funziona, ho cercato di capire i motivi per cui su IE non va sta roba.
Posizionare un oggetto in assoluto funziona bene a patto di avere un padre in relativo. Dato che nel mio esempio il padre è a sua volta in assoluto (in quanto viene forzato in assoluto dal javascript) ho pensato che forse i due nipoti dovevano a sua volta a vere un padre relativo figlio del padre assoluto. In pratica aggiungere un livello e farli diventare pro-nipoti.
Purtroppo anche questa soluzione non ha funzionato.
Come posso aggirare questo problema?
I nipoti in assoluto mi servono per poter posizionare dei contenuti in posizioni specifiche.
EDIT: Ho creato qua una pagina di esempio del problema
Grazie.

Rispondi quotando