No, quello non funziona in IE, per cui e` meglio evitarlo.
Poi ho visto che l'oggetto opaco lo vuoi sovrapporre all'immagine: prima pensavo che volessi un rollover, cioe` un cambio dell'immagine stessa. Chiaramente le cose sono diverse.
Dovrebbe essere qualcosa del tipo:
HTML:
codice:
<ul id="miniature">[*]<a href="miniature/x.jpg" rel="lightbox[Corte]" title="x">
[img]miniature/thumbnail/thumbnail_04.png[/img]
<span>&nbsp;</span>
</a>[*]<a href="..." rel="lightbox[...]" title="x">
[img]...[/img]
<span>&nbsp;</span>
</a>
...[/list]
CSS:
codice:
#miniature {
...
}
#miniature li {
float: left;
width: ...;
height: ...;
...
}
#miniature a {
width: 100%;
height: 100%;
display: block;
position: relative;
}
#miniature img {
position: absolute;
width:...; height: ...;
top:0; height: 0;
z-index: 10;
}
#miniature span {
background: transparent url(trasparente.png) repeat;
width: 100%;
height: 100%;
display: block;
position: absolute;
top:0; height: 0;
z-index: 20;
}
#miniature a:hover span {
background: transparent (url(semitrasp.png) repeat;
}
Come vedi lo span serve per sovrapporsi all'immagine.
Nei due stati avra` sfondo diverso: un'immagine trasparente (ti basta di 1pxX1px) ed un'immagine semitrasparente.
Per fare in modo che lo span si sovrapponga all'immagine, sia lo span che l'img devono essere posizionate in modo assoluto e con top e left a zero. Questo richiede che l'<a> (l'elemento che li contiene) sia posizionato in modo relativo.
A sua volta l'<a> deve essere trasformato in blocco (sia per poter contenere elementi di blocco e sia per poter essere posizionato).
La pseudoclasse :hover e` applicata al link, altrimenti non funziona in IE6.
Lo <span> non e` vuoto (alcuni brwoser ignorano gli elementi vuoti).
Ho tolto l'id del li, che per quello che volevo fare io non serve, ma forse ti serve per altre cose JS o CSS (o forse ti servira` applciata all'img o ad altro elemento).
Ho racchiuso tutto in un blocco <ul>, cui ho assengato un id (non una classe: in questo contesto mi sembra piu` adatto)