解决方法: wmode="Opaque"
<param name="wmode" value="opaque" /> 最佳推荐
参考文章:
今天正打算把刚做完的一个网站提交给客户时突然发现网站首页中因为放了好多Flash
,结果把几个浮动的都挡住了
。
第一想到的当然是把浮动层的z-index调高
,但似乎z-index对Flash不起作用
。
又想到:把Flash设为透明呢?一试之下果然好用:只要在Flash对象加入页面时生成的HTML代码中加入以下参数就可以让Div浮动层从Flash下露出来了:<param name="wmode" value="transparent" />
另外,放狗搜了一下,发现另外一个更专业的参数:<param name="wmode" value="opaque" />
transparent是负责透明的,显出浮动只不过是他的一个副业而已;而opaque才是专门负责让Flash位于其它层下的。
从嘟嘟的Blog上抄来了一段对这两个参数的详细说明:
wmode 属性/参数
值 Window | Opaque | Transparent
说明:
(可选)允许使用 Internet Explorer 4.0 中的透明 Flash 内容、绝对定位和分层显示功能。此标记/属性仅在带有 Flash Player ActiveX 控件的 Windows 中有效。
"Window"在 Web 页上用影片自己的矩形窗口来播放应用程序。"Window"表明此 Flash 应用程序与 HTML 层没有任何交互,并且始终位于最顶层。
"Opaque" 使应用程序隐藏页面上位于它后面的所有内容。
"Transparent"使 HTML 页的背景可以透过应用程序的所有透明部分显示出来,并且可能会降低动画性能。
"Opaque windowless"和"Transparent windowless"都可与 HTML 层交互,从而允许 SWF 文件上方的层遮蔽应用程序。
这两种选项之间的差异在于"Transparent"允许透明,因此,如果 SWF 文件的某一部分是透明的,则 SWF 文件下方的 HTML 层可以透过该部分显示出来,而"opaque"则不会显示。
如果忽略此属性,默认值为 Window。仅适用于 object。