簡體   English   中英

IE8中的透明PNG周圍的黑色邊框

[英]Black border Around Transparent PNG in IE8

我遇到一些問題,在透明的PNG文件周圍有一個黑色小邊框..在IE8中的一個jquery滑塊..它適用於所有瀏覽器(包括IE6和7)但在IE8中沒有。

你可以在這里看到: http//www.socialogika.com/tabs/goliath/collection/

我已經嘗試過在stackoveflow上找到的幾個修復程序,但它們似乎都不是解決方案(還)...轉向PNG-8從24修復了Ie6和7的問題,但仍然存在問題8

有人能指出我的工作解決方案嗎?

如果有幫助請告訴我: http//channel9.msdn.com/forums/TechOff/257324-IE7-alpha-transparent-PNG--opacity/

我已經對IE7 png進行了大量關於不透明度問題的研究,並且使用了兩種解決方法,其中涵蓋了大多數,但遺憾的是並非所有場景。

第一個已經在這個線程中提到過,它將為所需的不同不透明度提供不同的圖像文件。 當您只想顯示狀態時,此方法適用於鼠標懸停和鼠標懸停效果,但是當您想要為不透明度設置動畫時,這種方法可能無用。

第二種方法大部分時間都可以工作,但這取決於你的pagelayout和設計。 要偽造div的不透明度動畫,您可以在想要顯示不透明度變化的真實div上放置一個虛擬的第二個div。 第二個div應該絕對定位並采用背景div的寬度和高度。 根據您的頁面設計,您可以給它一個背景顏色(最適合真實背景圖像png),然后根據您要查找的效果設置該div上的不透明度以淡入或淡出。

因為無論如何你將使用javascript作為不透明度動畫,所以在需要效果時創建並插入新div很簡單,一旦完成就將其刪除。 這樣,實際的div內容仍然可以被網站訪問者復制,粘貼或右鍵單擊。

此外,也許嘗試確認我的預感,這是導致黑色邊框顯示的不透明度:禁用所有淡入淡出效果,讓我知道圖像是否正確渲染。

好吧......嘗試使用

.fadeTo()

DEMO

在任何情況下,您都可以使用這個小修復:

$('#mages img').css({background: '#EDE7DE'});

或者為IE創建一個if語句,您只需將.fix添加到所需的圖像。 .fix位於CSS文件中,為圖像添加所需顏色的背景。

if ($.browser.msie && $.browser.version <= 8 )
{
$('#gallery img').addClass('fix');
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM