您的位置:首页 > Web前端 > css

flash一直在最上方,设置z-index无效

更多 2017/8/31 来源:css利来国际娱乐官网浏览量:466
利来国际娱乐官网标签: z-index
本文导读:在做web开发中,可能会遇到flash遮挡页面中元素的情况,无论怎么设置其它元素的z-index值也无效,flash一直在最上方,下面介绍其解决方法

一、原因

在HTML中,如果嵌入Flash,默认会将flash放在页面的最上面。也就是说,即使用绝对定位,将z-index设的无穷高,页面里的任何元素还是无法将它盖住。

 

二、解决方法

在嵌入flash时,设置flash的wmode参数为opaque

1、针对IE 在<object></object>内加上参数<param name="wmode" value="opaque" />
2、针对FF 在<embed />内加上参数wmode="opaque"

即在网页中插入flash的代码类似如下

 

HTML 代码   复制

<object type=”application/x-shockwave-flash” data=”style/flash/001。swf” width=”400″ height=”400″>
   <param name=”movie” value=“001。swf” />
 <param name=”wmode” value=”opaque” />
 <embed wmode=”opaque”></embed> 
</object> 

 

三、扩展:flash嵌入的时候有几种模式

1、窗口(window)


默认情况下的显示模式。在这种模式下flash player有自己的窗口句柄,这就意味着flash视频是存在于Windows中的一个显示实例,是flash最快最有效率的渲染模式。由于他是独立于浏览器的HTML渲染,这就导致默认显示方式下flash总是会遮住位置与他重合的所有DHTML层。

2、不透明无窗口(opaque)

这是一种无窗口模式,在这种情况下flash player没有自己的窗口句柄,这就需要浏览器需要告诉flash player在浏览器中渲染的时间和位置。这时flash视频就不会在高于浏览器HTML元素,而是与其他元素一样在同一个页面上,因此你就可以使用z-index值来控制DHTML元素是遮盖flash或者被遮盖。


3、透明无窗口(transparent)

透明模式,在这种模式下flash player会将stage的背景色alpha值设为0,并且只会绘制stage上真实可见的对象,同样你也可以使用z-index来控制flash视频的深度值。

 

收藏
358
很赞
374
  • 上一篇:word-break、word-wrap、white-space的用法
  • 下一篇:没有了
  • 博聚网