Opacity IE8仅适用于localhost

时间:2012-10-18 08:35:34

标签: html internet-explorer opacity

这让我发疯了 - 我一直试图在IE8(以及IE< 7)中使用不透明度,所以我添加了IE特定的css-property -ms-filter(和{{ 1}}用于较旧的IE)。这在使用Visual Studio 2010内置开发服务器的localhost上运行良好,或者只是从磁盘打开html文件。

但是,在查看时(或使用filter filter等任何其他页面)我不会获得不透明度 - 只是纯色。

我在这里做了一个演示http://www.quirksmode.org/css/opacity.html - 在jsFiddle中查看时,div显示为黑色,但如果我使用相同的代码(这就是为什么我将它全部保存在html中)并从localhost或磁盘查看它我可以通过div看到文本。

以下是示例页面的完整代码:

<!DOCTYPE html>
<html>
    <head>
        <style>
            div {
                position: absolute;    
                top: 0;            
                height: 150px;
                width: 150px;
                background-color: black;
                opacity: .3;
                -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
                filter: alpha(opacity = 30);
            }
        </style>
    </head>
    <body>
        <p>Can you see me?</p>
        <div></div>
    </body>
</html>​

1 个答案:

答案 0 :(得分:1)

写这个问题我意识到它必须与IE的安全设置有关 - 特别是因为我在公司网络上可能已被锁定。

通过设置我终于发现导致问题的是二进制和脚本行为设置。由于filter是ActiveX的一部分,因此它们也会被禁用。

找到设置后,我尝试用谷歌搜索它,发现这个页面很好地解释了它。 http://paintincode.blogspot.de/2012/06/css-opacity-ie-filter-binary-and-script.html。我只希望在知道设置名称之前能够找到它。 =)