Precedente :: Successivo |
Autore |
Messaggio |
horus Macchinista
Registrato: 22/03/05 09:48 Messaggi: 2554 Residenza: Sirio e dintorni
|
Inviato: 06 Apr 2005 16:10 Oggetto: z-index select |
|
|
Oggi è la giornata in cui vi stresso con tutti i miei problemi irrisolti. Spero un giorno di potermi sdebitare.
Come faccio a cambiare lo z-index di una select?
Ho una pagina con diverse select e ho modificato il menu tasto destro utilizzando un div. Il problema è che per IE le select stanno sopra tutto (solo lui sa perché) e quindi vanno sopra al mio divmenu.
L'unica soluzione trovata in rete è quella di utilizzare un iframe che pare essere l'unica cosa che sta sopra una select.
Mi basta che funzioni con IE5.5+ (valli a capire i clienti). |
|
Top |
|
|
SverX Supervisor Macchinisti
Registrato: 25/03/02 11:16 Messaggi: 11568 Residenza: Tokelau
|
Inviato: 07 Apr 2005 08:40 Oggetto: |
|
|
posto che non sono mai riuscito a mettere niente sopra una select (non ho insistito più di tanto però...) magari se usi un iframe dentro la div (il menù...) ... hai già provato? |
|
Top |
|
|
horus Macchinista
Registrato: 22/03/05 09:48 Messaggi: 2554 Residenza: Sirio e dintorni
|
Inviato: 07 Apr 2005 08:51 Oggetto: |
|
|
Si si, infatti, al momento uso proprio quella soluzione.
Mi sembra assurdo però dover scrivere molto codice per fare una cosa così semplice. Le pagine hanno già dimensioni molto grandi (ho tabelle con 1.000/2.000 righe) e in questi giorni sono in fase di pulizia del codice per risparmiare preziosi byte. A meno che io non mi stia sbagliando clamorosamente nell'iframe devo ridefinire il body, gli stili e tutto, mentre magari devo solo scrivere una riga... |
|
Top |
|
|
SverX Supervisor Macchinisti
Registrato: 25/03/02 11:16 Messaggi: 11568 Residenza: Tokelau
|
Inviato: 07 Apr 2005 09:08 Oggetto: |
|
|
qui ci vorrebbe reb... comunque se tu sposti gli stili in un file css esterno poi lo puoi richiamare da entrambe le pagine HTML (o ASP o quel che è...) |
|
Top |
|
|
rebelia Dio maturo
Registrato: 17/07/03 08:22 Messaggi: 7987
|
Inviato: 07 Apr 2005 09:15 Oggetto: |
|
|
ehm... son qui e sto leggendo ma sinceramente non ci ho capito tantissimo
ad ogni modo funziona che se hai un elemento che vuoi far stare sopra gli altri, gli dai uno z-index piu' alto, puoi anche non avere nessun z-index e poi dare uno z-index 100 ad un elemento perche' vuoi essere sicuro che neanche dopo una qualche revisione e l'inserimento di ulteriori z-index finisca sotto, ma resti sempre davanti agli altri
l'unica e' sperimentare un poco, mi sa e inserire tutta la formattazione in un css esterno e' sicuramente il modo piu' pratico per farlo
horus, non e' che potresti postare un esempio di quel che hai fatto e di quel che invece vorresti succedesse? magari mi risulta piu' comprensibile (sorry ) |
|
Top |
|
|
horus Macchinista
Registrato: 22/03/05 09:48 Messaggi: 2554 Residenza: Sirio e dintorni
|
Inviato: 07 Apr 2005 09:26 Oggetto: |
|
|
Si, scusa, mi sono espresso male. Gli stili sono già in un file esterno.
Rimane però il fatto che dovrebbe essere:
Codice: |
<div id="m" onmouseover="hm()" onclick="jm()" onmouseout="lm()">
<div class="mi" id="MN" url="jsfunc(0)"><img src="img/nuovo.gif"> Nuovo</div>
</div>
|
mentre invece mi tocca scrivere
Codice: |
<div id="m" onmouseover="hm()" onclick="jm()" onmouseout="lm()">
<iframe id="ifM" src="about:blank" frameBorder="0"></iframe>
<script>
document.frames.ifM.document.write("<body style=overflow-x:hidden;overflow-y:hidden; topmargin=0 leftmargin=0 marginwidth=0 marginheight=0>");
document.frames.ifM.document.write("<link href=\"css/stile.css\" type=text/css rel=stylesheet>");
document.frames.ifM.document.write("<div id=m style=\"visibility:visible; width:100%;height:100%;\" onmouseover=window.parent.hm(event.srcElement) onclick=window.parent.jm(event.srcElement) onmouseout=window.parent.lm(event.srcElement)>");
document.frames.ifM.document.write("<div class=mi id=MN url=window.parent.jsfunc(0)><img src=img/nuovo.gif> Nuovo</div>");
document.frames.ifM.document.write("</div>");
document.frames.ifM.document.close();
</script>
</div>
|
Le funzioni js sono anche in un file esterno.
Il tutto solo perché dove compare il menù c'è una select, dove non c'è l'iframe non serve.
Ora le cose funzionano quindi il problema non è urgente, mi chiedevo solo se non c'era un modo più semplice (magari via css) di ricacciare indietro le select.
Edit @Reb: gli z-index li ho già provati praticamente tutti dai negativi ai positivi alti. |
|
Top |
|
|
rebelia Dio maturo
Registrato: 17/07/03 08:22 Messaggi: 7987
|
Inviato: 07 Apr 2005 09:50 Oggetto: |
|
|
dai un'occhiata qui, cmq z-index se non ricordo male lavora in coppia con il posizionamento relativo o assoluto (nel senso che devi dichiararlo) |
|
Top |
|
|
horus Macchinista
Registrato: 22/03/05 09:48 Messaggi: 2554 Residenza: Sirio e dintorni
|
Inviato: 07 Apr 2005 09:59 Oggetto: |
|
|
Perfetto! L'articolo che mi hai segnalato ha fugato ogni dubbio:
Citazione: | La regola però non vale su MsIE con i menù a tendina (<select>). Sul browser di Microsoft infatti, questi oggetti rimangono comunque in primo piano, a meno che non venga inserito un altro menù a tendina con uno z-index maggiore.
Quindi un <div> non può apparire sopra una <select> (almeno sul browser di Redmond). |
|
|
Top |
|
|
|