<style type="text/css">
div#foo {
background: #0000ff;
width: 200px;
height: 200px;
opacity: 0.30;
filter: alpha(opacity = 30);
}
div#foo>div {
color: black;
opacity:1;
filter: alpha(opacity = 100);
}
</style>
<div id="foo">
<div>Lorem</div>
<div>ipsum</div>
<div>dolor</div>
</div>
En el ejemplo anterior, la opacidad de div#foo
es heredada por elementos secundarios, haciendo que el texto sea casi ilegible. Supongo que es incorrecto decir que es heredado, la opacidad se aplica al div principal y los hijos son parte de eso, por lo que intentar anularlo para los elementos secundarios no funciona porque técnicamente son opacos.Opacidad de CSS y elementos secundarios
Normalmente uso una imagen de fondo alpha png en tales casos, pero hoy me pregunto si hay una mejor manera de hacer que un fondo de un div se vuelva semitransparente sin afectar el contenido.
me escribió acerca de su uso de una manera compatible hacia atrás hace un tiempo: http://dorward.me.uk/www/css/alpha-colour/ – Quentin
¡Gracias, aprendí algo! Lamentablemente, no parece funcionar en IE7. – Rob
@David gracias por el útil enlace – Rob