2

我想我前段时间问过相反的问题(允许鼠标事件通过图像上的透明区域 - 我最终为此使用了图像映射)但无论如何:

当对话框出现时,我需要一个掩码元素。过去我用过:

position:fixed;
left:0;top:0;right:0;bottom:0;
background:#000000;
opacity:0;
filter:alpha(opacity=0);

它有效,但它有点像“黑客”。

我无法获得background:transparent用于拦截鼠标事件的元素。这是故意的吗?除了上述之外,还有什么办法可以解决吗?或者上面是这个问题的最佳解决方案?

4

1 回答 1

0

问题background:transparent似乎特定于 IE(在 IE7/8/9 中测试)。这在其他浏览器中不是问题。

它也特定于 HTML 表单元素。例如,它在 IE 中适用于段落标签内的文本,但不适用于按钮标签。这很可能是 IE 中的渲染错误,而不是 Microsoft 深思熟虑的工程决策的结果。在 IE6 中曾经存在过类似的问题,选择框与position:absolute.

在这种情况下使用它会更安全opacity。如果您更改蒙版以使其部分透明而不是完全透明,background:transparent则可能感觉不像是黑客攻击。opacity

于 2012-12-10T00:12:34.130 回答