2011-02-03 52 views
3

我正在運行fadeIn()和fadeOut()在一個div的塊中有一個PNG圖像,半透明基金(有影子)。jquery - 在PNG圖像中的fadeIn()和fadeOut()。 IE8中的邊框實體(黑色)...?

http://jsfiddle.net/k3KUj/8/embedded/

在IE 8,當你運行淡入()和淡出()出現在硬邊,但很快消失。在Firefox中,沒關係。

邏輯在PNG中應用背景顏色(例如,與上面的鏈接,背景顏色應該是淺灰色),它的工作原理。

但不想在PNG中放置背景顏色。我試圖讓黑邊不會出現在IE 8中,即使你有PNG圖像的透明度。

尋找在forum響應,嘗試:

-MS-濾波器: 「的progid:DXImageTransform.Microsoft.gradient(startColorstr =#00FFFFFF,endColorstr =#00FFFFFF)」;/* IE8 /
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr =#00FFFFFF,endColorstr =#00FFFFFF);/
IE6 & 7 */
zoom:1;

並查看jquery IE Fadein and Fadeout Opacity

$( '#集團')的CSS( '過濾器', 'α(不透明度= 40)')。

並查看fadeIn/fadeOut jquery problem with IE7/8 & png

$( 「#集團」)的CSS( '過濾器', '無')。

但是,不起作用。任何新的想法,沒有在圖像背景中應用任何顏色透明?

謝謝,維尼修斯。

+0

有關爲什麼當你有(半)透明圖像的時候,jQuery的褪色效果如此糟糕,這可能會有所幫助:http://stackoverflow.com/questions/1156985/jquery-cycle-ie7-transparent-png-問題 – 2011-02-11 18:56:40

回答

1

定義了堅實的背景顏色給你的形象:

 
    .container img { 
     background-color: white; 
    } 

定義圖像的背景圖像 CSS屬性的SRC屬性:

 
    $('.holder-thumbs li a img').each(function() { 
     $(this).css('background-image', $(this).attr('src')); 
    }); 

優點:你不不需要更改標記

缺點:有時應用爲橄欖色背景顏色不是一個可接受的解決方案。它通常是爲我。