Box Shadow в CSS Internet Explorer 8 проблема - PullRequest
4 голосов
/ 14 июня 2011

У меня вопрос по IE8 с css. Я вставил код в мой CSS из MSDN

.shadow {-ms-filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color='#000000')";}

Я использовал код проблемы вот так

<div class="shadow"> <p>Bla Bla</p> </div>

И у меня есть проблема по этому поводу. Я хочу, чтобы только у DIV была тень, но у "Bla Bla" тоже есть тень.

Может кто-нибудь предложить метод, чтобы исправить эту проблему?

Спасибо ...

Ответы [ 3 ]

6 голосов
/ 14 июня 2011

Вам необходимо указать цвет фона для вашего элемента:

http://jsfiddle.net/UNKAc/14/

.shadow {
    background:#fff;
    -ms-filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color='#000000')";
}

Не цитируйте меня об этом, но: я думаю, это потому, что IE пытается пролить свет, которому нужно тело, чтобы отбросить тень. А поскольку ваш div прозрачен, единственное, что может отбрасывать тень, - это сам текст.

2 голосов
/ 29 июня 2011

Я знаю, что это пара недель, но если вы все еще дорабатываете, вам стоит взглянуть на CSS3 PIE.Один из моих друзей здесь, на работе, показал мне это, и было бы здорово, если бы вы могли положиться на JS для этих типов улучшений для IE.

2 голосов
/ 14 июня 2011

Вы можете применить background-color: #fff к вашему div, тогда вы не сможете увидеть тень, нарисованную текстом.

Однако filter выглядит не так хорошо, какbox-shadow из CSS3.

IE8 не поддерживает box-shadow, но вы можете эмулировать его с помощью CSS3 PIE .

...