透明度使所有对象透明

  • 本文关键字:对象 透明 透明度 css
  • 更新时间 :
  • 英文 :


不确定,如何命名这个问题,但是,我遇到了一个问题(次要的,但仍然),我有一个主要的div容器,它基本上是一个白色文本框,这是92%的不透明度:

     -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=92)";
filter: alpha(opacity=92);
opacity:.92;

但是,这工作正常,在某些页面上,我有一个 Jplayer 音频播放器,它也变成了 92% 的透明度。有谁知道一种方法,我仍然可以保持透明度,但保持主div 容器内的对象完全不透明?

使用此 CSS-

#div{
    background: rgba(255, 255, 255, 0.92);
}

然后使用此脚本在 IE 中实现浏览器兼容性。

<!--[if IE]>
   <style type="text/css">
       .color-block { 
           background:transparent;
           filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#50990000,endColorstr=#50990000);
           zoom: 1;
       } 
    </style>
<![endif]-->

使用背景:rgba(255, 255, 255, 0.92);

当您使用 background 属性时,它仅将 alpha(最后一个值,不透明度)应用于背景本身。使用它而不是 ms-filter,因为它适用于所有**现代浏览器。

#parent{
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=92)";
}
#parent>*{
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

这将使父母的阿尔法达到92%,而孩子是100%。但是我不记得这是设置了元素的不透明度还是 alpha?因为如果它设置了元素的不透明度。父元素中的每个元素也会受到影响。另一种方法是使用背景图像,选择 ie 8 及更低版本以使用替代方法或一些非常尴尬的定位。

最新更新