Альфа-прозрачность IE с позиционированными дочерними элементами - PullRequest
0 голосов
/ 17 ноября 2011

Я пытаюсь убрать элемент контейнера, используя:

zoom: 1;
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=14)"; /*IE 8,9*/
filter: alpha(opacity=14); /*IE 5,6,7*/
opacity: .14; /* Good Browsers */

Внутри этого контейнера у меня есть дочерние элементы, которые позиционируются относительно с позиционными абсолютными дочерними элементами в них. IE 8 и ниже определили, что эти элементы не должны слушать прозрачность и должны отображаться с полной непрозрачностью.

Есть ли способ заставить IE уважать прозрачность позиционируемых элементов, которые они должны иметь? Эти элементы постепенно исчезают и влияют на них, поэтому я хотел бы избежать многочисленных взломов IE везде в javascript, и если я дублирую прозрачность в CSS на них, другие браузеры снова исчезнут, делая их почти невидимыми. 1006 *

Ответы [ 2 ]

1 голос
/ 17 ноября 2011

Есть комментарии на странице .fadeTo() метода JQuery , которые ссылаются на эту ошибку. К сожалению, в данный момент, похоже, нет иного исправления, кроме применения затухания к каждому абсолютно позиционированному элементу вместо родительского.

0 голосов
/ 17 ноября 2011

Попробуйте эту технику , это довольно круто. Я использовал этот стиль:

.alpha80 { 

  background: rgb(255, 255, 255);

  background: rgba(255, 255, 255, 0.8);

  background: transparent !ie;

  zoom:1;

  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#CCffffff,endColorstr=#CCffffff);

  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#CCffffff, endColorstr=#CCffffff)";

}

А потом для вашего HTML:

<div class="alpha80">
  <!--your content-->
</div>
...