Тень и непрозрачность в css3 для IE8 (не совпадают) - PullRequest
0 голосов
/ 07 апреля 2011

у меня есть несколько изображений (перед моим bachground-изображением) с низкой непрозрачностью (формат png) и все было хорошо в ie8 & firefox, пока я не добавил pie.htc (или border-radious.htc из кода Google) для закругленных углов и Shadow Box в ie8 ...

после добавления pie.htc по:

behaviour : url(pie.htc);

и добавление следующих кодов:

border-radius:15px;
-moz-border-radius:15px;
-webkit-border-radius:15px;
box-shadow: 5px 5px 20px red;
-moz-box-shadow: 5px 5px 20px red;
-webkit-box-shadow: 5px 5px 20px red;

прозрачность моих изображений исчезла ...

Я протестировал его с помощью простого html-проекта и выяснил, когда мы используем блок теней в ie 8 (просто ie8 и ff в порядке), тень заполняет весь наш элемент, поэтому непрозрачность уменьшается.

как я могу решить эту проблему тени + непрозрачности?

=============================================== ======

МОЙ ВОПРОС ДРУГИМ ПУТЬ:

КАК МЫ МОЖЕМ СОЧЕТАТЬ НИЖЕ КОДЫ ДЛЯ IE8 (с сохранением непрозрачности):

-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=25)";//opacity
filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=25);//opacity

-ms-filter: "progid:DXImageTransform.Microsoft.dropShadow(attribute1=value1, attribute2=value2, etc)";//shadow

заранее спасибо

Ответы [ 3 ]

1 голос
/ 02 мая 2011

icant правильно, но имеет небольшую опечатку. Это должно быть Progid вместо Profid. Я пытался редактировать, но это не позволило мне отредактировать только одну букву.

filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=25) progid:DXImageTransform.Microsoft.dropShadow(attribute1=value1, attribute2=value2, etc);

Спасибо, icant!

1 голос
/ 15 мая 2011

кажется, что невозможно использовать тень с непрозрачностью в IE 8 ... Когда вы добавляете тень после непрозрачности к элементу (в Firefox все хорошо) в IE8 вы не можете почувствовать, что непрозрачность существует, потому что эта тень заполняет весь элемент и не позволяет прозрачности показывать себя.

однако я проверил эту проблему с помощью простого html-проекта и искал решение этой проблемы безрезультатно / если вы нашли решение по этому вопросу, поделитесь им с нами.

0 голосов
/ 07 апреля 2011

Просто поместите тень после непрозрачности и добавьте пробел между ними.Это так просто, как могло бы быть.

filter: profid:DXImageTransform.Microsoft.Alpha(Opacity=25) progid:DXImageTransform.Microsoft.dropShadow(attribute1=value1, attribute2=value2, etc);
...