internet-explorer - CSS 依赖于 ActiveX?

标签 internet-explorer activex css

只要启用 ActiveX,我的页面就可以在 FF、Chrome、Safari 甚至 IE8 中运行。

[链接已删除]

要在 IE8 中使用 CSS3 功能(旋转、不透明度、文本阴影),我必须使用 ActiveX 过滤器。我的问题是,当您第一次访问该站点时,它会在顶部弹出一个横幅,用户必须单击该横幅,然后单击“允许”,然后单击“确定”。我认为大多数 IE 用户不会这样做。

所以我想通过将标题(我的名字)向下移动并给它一个纯色背景,使 IE8(在 ActiveX 之前)中的默认布局看起来不错。但是,如果我添加这些样式,如果用户确实启用了 ActiveX,它会使页面看起来很糟糕。

我似乎想不出一个 CSS 解决方法,有人有什么想法吗?

谢谢! 杰夫

编辑:澄清一下,我并不是要让旋转、opactiy 等在没有过滤器的情况下在 IE8 中工作。请参阅对 Olafur 的回复以进行澄清...

最佳答案

首先,好消息:

My problem with this is that when you first go to the site, it pops up with a banner at the top, which users have to click, then click Allow, then click OK. I don't think most IE users are going to do this.

大多数 IE 用户不必这样做,因为在 'Run ActiveX controls and plug-ins' 的默认安全设置中是“已启用”。我怀疑您看到它是因为您或您的网络管理员故意在您的安装中锁定了 ActiveX。

现在是坏消息 - 我不确定是否有任何方法可以测试 ActiveX 而不会触发默认情况下未启用它的用户的警告消息。然而,如果你能为它制定一个可靠的测试(不知 Prop 体如何,但是 applying a filter 的一些变体然后检查它是否适用),应用样式应该相对容易一些JavaScript。

以正常方式声明页面的默认规则,没有任何旋转、不透明度或文本阴影:

h1 {...}
p {...}

在页面加载时运行您的例程来检测是否支持 ActiveX,如果它动态地添加一个类到主体元素,例如 ax-en。同时在你的样式表中你有这样的规则:

.ax-en h1 { /* -ms-filter stuff and associated rules */ }
.ax-en p { /* -ms-filter stuff and associated rules */ }

这基本上是 modernizr.js 使用的方法, 阅读 this article以获得对总体策略的更详细解释。

关于internet-explorer - CSS 依赖于 ActiveX?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4119364/

相关文章:

javascript - 在 IE 11 超链接中强制下载 Microsoft Outlook (.msg) 文件

javascript - Jquery 在 ie6 ie7 ie8 中返回 slider 的无效属性值

css - 如何在 IE 11 中为多选添加复选框

c++ - COleControl 的 OnClose 被覆盖,但从未被解雇

.net - 提示用户从浏览器安装 ActiveX/.Net 类库

asp.net - 在客户端 ASP .Net C# 上运行非托管 C++ 函数

javascript - Internet Explorer - 使用 VBA 使用文本掩码填充输入框

html - 具有背景色的容器 div 隐藏表格单元格

css - 防止 SASS gulp 编译器在 "!important"之前添加空格

html - 如何将文字向上移动到图片旁边?