Opacity в IE8
У меня есть див, внутри которого другой див с фоном из PNG.
Мне нужно сделать всю эту конструкцию полупрозрачной. В ие8 есть Код:
filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50); Нашел как включить прозрачность для png, однако включается она для картинки, которая стоит в теге <img>, а не в фоне: document.getElementById("img1").style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=fig0902.png,sizingMethod='scale')"; Как быть? П.С. Вынуть PNG из фона нельзя по условиям задачи =) |
Snipe,
А может саму картинку отредактировать? |
Может так:
<div style="background: url('http://javascript.ru/forum/images/ca_serenity/misc/logo.gif'); width: 100px; height: 75px;"></div> <script type="text/javascript"> window.onload = function(){ (function(i){ element = document.getElementsByTagName("div")[0]; if(!element) return; var alpha = element.filters['DXImageTransform.Microsoft.alpha'] || element.filters.alpha; alpha ? alpha.opacity = i : element.style.filter += "progid:DXImageTransform.Microsoft.Alpha(opacity="+i+")"; })(50); }; </script> или так: <div style="background: url('http://javascript.ru/forum/images/ca_serenity/misc/logo.gif'); width: 100px; height: 75px;"></div> <script type="text/javascript"> window.onload = function(){ (function(i){ element = document.getElementsByTagName("div")[0]; if(!element) return; var alpha = element.filters['DXImageTransform.Microsoft.alpha'] || element.filters.alpha; alpha ? alpha.opacity = i : element.runtimeStyle.filter += "progid:DXImageTransform.Microsoft.Alpha(opacity="+i+")"; })(50); }; </script> |
Часовой пояс GMT +3, время: 11:28. |