【问题标题】:Div on top of flash without wmode没有 wmode 的 Flash 上的 Div
【发布时间】:2010-03-10 16:46:27
【问题描述】:

我有一个广告,它基本上是 IFRAME 中的闪存文件。不幸的是,我无法控制 flash 文件的 wmode。

有什么方法可以把 div 放在 flash 上面吗?

更新:那么 Wibiya (wibiya.com) 是如何做到的?

【问题讨论】:

    标签: css flash


    【解决方案1】:

    出于向后兼容性的原因,您可以尝试使用许多浏览器都支持的 iframe cut-out hack。

    http://neugierig.org/software/chromium/notes/2009/07/windowed-windowless-plugins.html

    添加一个绝对定位的具有适当尺寸的空 iframe,在您希望底层 HTML “渗透”的任何地方充当掩码。 Wibiya大概就是这么干的,虽然我没看过。

    如果您正在寻找灵感,Closure 提供了一个帮助类来执行此类操作:http://code.google.com/p/closure-library/source/browse/trunk/closure/goog/ui/iframemask.js

    【讨论】:

      【解决方案2】:

      不。无窗口对象与有窗口对象(例如 IE 的 ActiveX 控件)在不同的“平面”上呈现。微软的解释显然只适用于 Internet Explorer,但其他浏览器似乎也以类似的方式工作。

      所有有窗口的元素都将自己绘制在所有无窗口的顶部 元素,尽管他们的意愿 容器。但是,窗口元素 请遵循 z-index 属性 互相尊重,就像 无窗口元素遵循 z-index 属性相互关联。

      所有无窗口元素都被渲染 在同一个 MSHTML 平面上,并窗口化 元素在单独的 MSHTML 上绘制 飞机。您可以使用 z-index 来 在同一平面上操作元素 但不能与元素混搭 在不同的平面。你可以重新排列 每个元素的 z 索引 飞机,但有窗的飞机总是 在无窗的顶部绘制 飞机。

      http://support.microsoft.com/kb/177378

      这实际上是广告服务的一个好处 - 它可以防止发布商掩盖、覆盖和稍微改变他们的广告(例如,在广告前面放置一张图片以使其与网站融为一体)。

      【讨论】:

        猜你喜欢
        • 2011-08-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-16
        • 2011-09-14
        • 1970-01-01
        • 1970-01-01
        • 2010-12-10
        相关资源
        最近更新 更多