【发布时间】:2011-06-22 03:08:28
【问题描述】:
我有一个 Flash 幻灯片,上面有 2 个 div,一个在顶部,一个在底部。
<header>
<div id="top-menu">
<ul>
<li>Main Menu Link</li>
<li>Main Menu Link</li>
<li>Main Menu Link</li>
</ul>
</div>
<header>
<div id="content">
<div id="slideshow_wrapper">
<section id="intro">
<p>Introduction Text</p>
</section>
<section id="slideshow">
<!--dynamically inserted flash object-->
</section>
</div>
</div>
两者都在 Firefox/Safari/Chrome 中正确覆盖,但我尝试的任何方法似乎都无法使其在 IE 中运行。我正在使用Remy Sharp's HTML 5 enabling script 使HTML5 标记在较低版本的IE 中工作。
有趣的是,第二个 div #intro 正确叠加,但 #top-menu 总是出现在幻灯片后面。
所有 3 个元素都通过显式设置的 z-indexes 绝对定位。无论我将它们设置多高或低,flash 对象始终位于#top-menu 元素的前面。
我检查了呈现的<param> 标签,其中一个标签将wmode 列为transparent。
flash 对象是通过 CMS 使用 php 动态插入的,因此我无法访问许多人建议添加 transparent 属性的 <embed> 标签。
【问题讨论】:
-
您需要将 wmode="transparent" 添加到嵌入标签中,抱歉。
-
其实我是在写完代码后才想到的。我在问题 div 的父标签上添加了
z-index声明,它起作用了。与幻灯片显示在不同的父 div 中并在#top-menu的父 div 之后有关。一个 div 工作正常而另一个 div 却很难,这看起来确实很奇怪。 -
实际上,我相信它是
wmode: "opaque",或者至少这是我必须在我的应用程序中使用的,我有一个 Flash 横幅和一个下拉菜单。 -
我尝试将
wmode更改为opaque但没有区别。 -
请发布您的完整代码。它是 z:index、在 div 中使用 position:relative、position:absolute 以及 wmode 的组合。作为