无法在Flash文件上方获取CSS下拉列表

Asked
Viewd1556

2

我已经搜索了所有内容,并尝试了可以使用的所有方法,并且无法使我的CSS下拉菜单显示在Flash文件上方。

您可以转到: http://beta.riverlifefellowship.com ,用户名是“ riverlife”,并且密码为“流”(两者都没有引号)。

我正在使用swfObject并设置了<param name="flashvars" value="wmode=opaque"/>。下拉列表周围的div是绝对位置,z索引为9999,flash文件周围的div是相对位置,z索引为-1

任何尝试的建议都将不胜感激!

[注意:它适用于Mac OS上的所有浏览器,但不适用于Windows OS上的浏览器]

4 个答案

6

将Flash的wmode属性设置为透明-通常可以使用

编辑: 您正在使用<object>嵌入.swf-这是一种方法,但是<embed>可以在更多浏览器上运行,并且实际上可以与已设置的wmode结合起来解决该问题。Adobe Dreamweaver有一个很好的方法来创建一些JavaScript,以根据浏览器处理或<object>的选择。但是没有那个,您的代码基本上应该看起来像这样。(这已在Firebug中进行了测试并且有效)

 <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" 
    codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="980" height="250">
    <param name="movie" value="/files/themes/RiverLife-Oct09/media/header_ssp2.swf" />
    <param name="quality" value="high" />
    <param name="wmode" value="opaque" />
    <embed src="/files/themes/RiverLife-Oct09/media/header_ssp2.swf" quality="high" wmode="opaque" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="980" height="250"></embed>     
    </object>
 
  • 我喜欢您的回答,您在大约13秒内击败了我!呵呵

    ZoidbergNovember 13, 2009 20:40
  • 您可以在HTML中执行此操作,而不是将其作为swf的一部分

    Jarrett WidmanNovember 13, 2009 20:35
  • 我有wmode =“ opaque”并且仍然没有运气。我尝试透明,但也没有用。

    Jeremy HNovember 15, 2009 04:05
1

您的下拉菜单将与position: absolute一起使用。

编辑: 我得到了一个类似的案例,其中在顶部还有一个下拉菜单,在其下方有一个Flash对象。在我的情况下,菜单具有position: absolute和Flash对象wmode="opaque"。 也许值得一提的是,菜单位于包含overflow: auto和flash对象的容器div中。这对我有用。

好吧,我们写下来吧。

 <div id="header">
    <div id="menu"></div>
</div>

<div id="flashContainer">
    <object id=flash"></object>
</div>




#header
{
    overflow: auto;
}
#header #menu
{
    position: absolute;
    top: 2px;
    left: 40px;
}
#flashContainer
{
    overflow: auto;
}
#flash
{
    float: left;
}
 
  • 也许您可以看一下我的page \ CSS并告诉我我需要什么?我将其放在菜单的最外面的容器中,也将其放在下拉菜单中。我想念什么?

    Jeremy HNovember 15, 2009 04:04
2

您将wmode设置为透明吗?

 <param name="wmode" value="transparent" />
 
5

除非您实际上需要透明性(即,您的Flash电影具有透明背景),否则最好的选择是将opaque用于wmode,这将比transparent具有更好的性能。只有wmode="window"(是默认设置),以防止浏览器在Flash顶部绘制。

http://www.communitymx.com/content/article.cfm ?cid = e5141

这种模式让我感到困惑 由于以下措辞:“不透明模式 使电影把所有东西藏起来 它在页面上。另外,不透明 模式将元素移到Flash后面 电影(例如,具有动态 HTML)以防止它们显示 通过。”事实是,因为通过使用 wmode =“ opaque”,您已经将 将Flash Player直接放到页面上, 现在可以接受展示位置了 像其他任何元素一样定位。 除非您的观众没有使用 兼容的浏览器(列表) Z索引将受到尊重,并且 呈现。是的,你可以移动 Flash电影背后的元素 阻止他们显示出来,但是 您可以轻松移动 Flash电影前面的元素 防止显示Flash 通过。