IE показывает черную рамку вокруг PNG, когда исчез - PullRequest
8 голосов
/ 11 февраля 2011

Вот мой сайт: http://smartpeopletalkfast.co.uk/ppr6/

У меня есть PNG с прозрачностью и jQuery. IE8 (еще не проверенный другими) показывает черные границы вокруг PNG, пока они исчезают. Я знаю, что это признанная проблема, и я попробовал несколько методов без удачи.

Однако я заметил, что сердце (последнее загружаемое изображение) не имеет черных границ. Почему это нормально? Надеюсь, если я выясню, почему я могу использовать это, чтобы исправить другие.

Спасибо

UPDATE

Я так много разобрался с кодом, что даже не понял, что непреднамеренно отключил появление сердца, поэтому нет границ.

Это странная проблема. На всех форумах, на которых я смотрел, есть решения, которые, похоже, работают для некоторых людей, но не для других.

Ответы [ 5 ]

8 голосов
/ 08 февраля 2012

Я знаю, что эта ветка очень старая, в любом случае я нашел этот пост, который отлично работал для меня, он полностью удаляет черные границы из PNG в IE7, IE8.

.item img {
    background: transparent;
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF)"; /* IE8 */   
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);   /* IE6 & 7 */ 
}

Вы можете найти его в этой теме http://www.sitepoint.com/forums/showthread.php?590295-jQuery-fadein-fadeout-of-transparent-png-in-IE7-and-Chrome

4 голосов
/ 18 февраля 2011

добавить этот атрибут в ваш тег, как это

<img src="/someimage.png" alt="yourImageDesc" style="border-style: none" />
3 голосов
/ 19 марта 2011

Использование PNG-8 сработало для меня.Это небольшая белая рамка с изображением, которое в реальном файле не является проблемой браузера, но в моем случае это выглядит хорошо.

2 голосов
/ 19 июня 2012

поставить цвет фона

background: #E1AE07;
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF)"; /* IE8 */   
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);   /* IE6 & 7 */      
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    filter: alpha(opacity=50);
    -khtml-opacity: 0.50;
    -moz-opacity: 0.50;
    opacity: 0.50;
0 голосов
/ 02 марта 2011

У меня была та же проблема с настройкой непрозрачности элемента с использованием jquery, как в $('div').css('opactiy',0.5); я смог исправить это, установив сплошной цвет фона для 'div' в озабоченности.

простая демонстрация: http://jsfiddle.net/mwXs3/3/ (сравните это в Firefox и ie8) ...

...