Devi necessariamente usare due div sovrapposti (layers).
In quello sottostante definisci lo sfondo (anche un semplice colore pieno va bene, senza scomodare elementi grafici non necessari) e ne impostai la trasperenza con opacity:0.4; filter:alpha(opacity=40);
Io aggiungerei anche MozOpacity:0.4;KhtmlOpacity:0.4; etc.
Nel div sovrapposto metti i contenuti che vuoi.
Il problema starà nel sincronizzare posizione e dimensioni dei due div, che dovranno coincidere.
Temo che l'utilizzo di png semi-trasparenti crei problemi di incompatibilità maggiori dell'uso dei vari attributi di opacità nei css.
Dubito che tu possa risolvere altrimenti...