IE7和IE8中旋转透明png周围的黑色边缘



在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中正确显示旋转后的图像吗?

致以最良好的问候。

找到仅固体背景的解决方案

花了一些时间才把它拼凑起来。我的第一个线索是这个网站,它产生了以下代码更改事实上,我刚刚注意到,我下面的代码与你在问题中所说的相同不起作用,但它对我起作用。。。重新检查一下我的小提琴,看看它现在是否对你有用。请注意,在这个小提琴中,它适用于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,则它仅在未旋转的元素上起作用。

最新更新