Ver Mensaje Individual
  #5 (permalink)  
Antiguo 20/05/2013, 14:51
Avatar de berkeleyPunk
berkeleyPunk
 
Fecha de Ingreso: febrero-2013
Ubicación: México :C
Mensajes: 565
Antigüedad: 11 años, 2 meses
Puntos: 22
Respuesta: ¿cómo hacer efecto trasparencia al fondo no al texto de un div?

Cita:
Iniciado por pzin Ver Mensaje
Usa los filtros de Microsoft...
Increíblemente he logrado que Internet Explorer (8) haga lo que quiero, pero no Firefox!

Es decir, que el fondo de un div sea semitransparente pero NO su contenido.

PZIN, RGBA() sirve a la perfección para dar transparencia al div y no al contenido. El problema es que sirve en Firefox no en IE. Para dar el mismo efecto en IE, necesito usar el atributo filter:alpha(opacity=50). Y este atributo no funciona si declarmos RGBA(). Para que funcione el filter, hay que poner el color en RGB().


Básicamente la pregunta sigue siendo la misma, pero más específica: ¿cómo hacer semi-transparente el fondo de un div, pero no su contenido, tanto en Firefox como en Internet Explorer?

He aquí lo que llevo:
Código HTML:
Ver original
  1. <div id="capaFondo">
  2.     <div id="capaTransparente">
  3.       <div>Este texto debe ser negro sólido, SIN transparencia.</div>
  4.     </div>
  5.   </div>

Código CSS:
Ver original
  1. #capaFondo {
  2.       width:150px;
  3.       height:350px;
  4.       background-color:gray;}
  5.   #capaTransparente {
  6.       width:300px;
  7.       height:200px;
  8.       font-size:40px;
  9.       z-index:1;
  10.       color:black;   
  11.  
  12.       background-color:blue;
  13.       filter:alpha(opacity=50); }
  14.      
  15.   #capaTransparente div {
  16.       position:relative;        // Extrañamente, hay que posicionar el elemento para que la transparencia funcione.
  17.       opacity:1;
  18.       filter:alpha(opacity=100);}

Última edición por berkeleyPunk; 20/05/2013 a las 14:57