IE7 alpha 过滤器级联到所有其他元素...如何阻止它?

发布于 2024-10-18 14:07:59 字数 360 浏览 7 评论 0原文

我有这个页面,我的容器有一个背景图像,

background-color:rgba(255, 255, 255, 0.76); 
*background-color:#fff; 
*opacity: 0.8; 
*filter: alpha(opacity = 80); 

在 Mozilla 中使用可以正常工作;显示半透明背景和内部完全不透明的元素;但在 IE7 中,透明度继承到所有其他元素。我尝试在容器内制作一个新容器

*opacity:1, *alpha(opacity=100), *zoom:1, *filter:none 

,但似乎没有任何效果......

I have this page where my container have a background image using

background-color:rgba(255, 255, 255, 0.76); 
*background-color:#fff; 
*opacity: 0.8; 
*filter: alpha(opacity = 80); 

in Mozilla works ok; shows the translucent background and the elements inside completely opaque; but in IE7 the transparency inherits to all other elements. I've tried making a new container inside the container giving

*opacity:1, *alpha(opacity=100), *zoom:1, *filter:none 

and stuff but nothing seems to work...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

赢得她心 2024-10-25 14:07:59

你必须使用半透明的背景图像,它适用于每个浏览器(IE6除外......)

You have to use a semi-transparent background-image, it will work in every browser (except IE6...)

美人迟暮 2024-10-25 14:07:59

发生这种情况是因为您正在使用不透明度和过滤器 css 标签,这些标签将由子元素继承。

尝试使用以下内容:

.element{
   -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
   filter: alpha(opacity=80);
   -moz-opacity:0.8;
   -khtml-opacity:0.8;
   opacity:0.8;
}

.element *{
   -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
   filter: alpha(opacity=100);
   -moz-opacity:1.0;
   -khtml-opacity:1.0;
   opacity:1.0;
}

这应该选择所有子元素并将其不透明度设置为 100%,并且应该适用于所有浏览器

This is happening because you are using the opacity and filter css tags, which will be inherited by child elements.

Try using the following:

.element{
   -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
   filter: alpha(opacity=80);
   -moz-opacity:0.8;
   -khtml-opacity:0.8;
   opacity:0.8;
}

.element *{
   -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
   filter: alpha(opacity=100);
   -moz-opacity:1.0;
   -khtml-opacity:1.0;
   opacity:1.0;
}

This should select all child elements and set their opacity to 100% and should work in all browsers

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文