4

有许多可行的解决方案可以在 IE 中正确显示透明 png,但如果图像位于旋转容器中,所有这些解决方案都将不起作用。

我试过了

img{
    background: transparent; 
    -ms-filter: “progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF)”; 
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF); 
    zoom: 1;
}

解决 IE 的透明 png 错误,但它不起作用。

我已经在 . http://jsfiddle.net/s__a/Hmyc2/

请确保您使用Microsoft Internet Explorer 7访问它,IE8 没有实现轮换。任何人都可以帮助在IE7 / IE8 中正确显示旋转的图像吗?

最好的祝福。

4

1 回答 1

0

仅找到纯背景解决方案

花了一些时间才把它拼凑起来。我的第一个线索是这个站点,它产生了以下代码更改。实际上,我刚刚注意到,我下面的代码与您所说的在您的问题中不起作用的代码相同,但它对我有用……重新检查我的小提琴,看看它现在是否适合您。请注意,在这个小提琴中,它适用于 IE7 ,但不适用于 IE8img不旋转)。

.test-1{
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#FFFFFFFF,endColorstr=#FFFFFFFF)";/* IE 8 */ 
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#FFFFFFFF,endColorstr=#FFFFFFFF);   /* IE 6 & 7 */ 
    clip:rect(0px 276px 267px 0px);  /* top,right,bottom,left */ 
}

因此,更多的挖掘Stack Overflow 的答案也有助于为 IE8 制作小提琴!IE8 的最终修复是使用Matrix过滤器转换的项目需要z-index添加一个以纠正它不旋转子img元素的错误。

然而,这个“修复”显然还只是部分修复。 旋转元素的问题目前仍然存在于背景本身的任何透明度,因为如果渐变的 alpha 值设置为透明,#00FFFFFF那么它仅适用于非旋转元素。

于 2012-07-13T16:13:45.163 回答