有时我们要用flash做透明背景结果发现加好之后下面的文字连接点击不了了,div下拉也给flash档住了,后来百度发现我们只要设置wmode参数就可解决了。
 

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

1、在嵌入flash时,设置flash的wmode参数为opaque
2、在嵌入flash时,设置flash的wmode参数为transparent

对应的IE和FireFox的代码如下所示,

发现ie和FF加该参数的方式不同,遂针对处理了一下,这下都可以了。

让Flash不档住浮动对象或层的关键参数:wmode=opaque

方法:

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

方法一:

在网页中插入flash的代码如下:

 代码如下 复制代码
<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> 

其中param有个name为wmode的属性,只要将其设置为opaque, 并确保包含<embed wmode=”opaque”></embed>即可。

注:代码中必须包含上代码中的2、3行。

方法二:设置透明的Flash

本方法是设置flash透明来达到所需的效果。具体做法是 将上代码中的name为wmode的属性设置为transparent, 即代码:<param name=”wmode” value=”transparent”>

原因:

flash嵌入的时候有几种模式:

1、窗口(window)
默认情况下的显示模式。在这种模式下flash player有自己的窗口句柄,这就意味着flash影片是存在于Windows中的一个显示实例,并且是在浏览器核心显示窗口之上的,所以flash只 是貌似显示在浏览器中,但这也是flash最快最有效率的渲染模式。由于他是独立于浏览器的HTML渲染表面,这就导致默认显示方式下flash总是会遮 住位置与他重合的所有DHTML层。但是大多数苹果电脑浏览器会允许DHTML层显示在flash之上,但当flash影片播放时会出现比较诡异的现象,比如DHTML层像被flash刮掉一块一样显示异常。

2、不透明无窗口(opaque)

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

透明模式,在这种模式下flash player会将stage的背景色alpha值将为0并且只会绘制stage上真实可见的对象,同样你也可以使用z-index来控制flash影片的 深度值,但是与opaque模式不同的是这样做会降低flash影片的回放效果,而且在9.0.115之前的flash player版本设置wmode=”opaque”或”transparent”会导致全屏模式失效。

这三种模式分别表示着Flash在页面中的三种表现形式,根据这三种表现形式,我们就找到了解决这个问题的方法,就是将页面中的Flash模式 (wmode)设置为不透明无窗口(opaque)或者是透明无窗口(transparent),在这两种模式下页面中的Flash将与HTML结构是处 于同一级别的,所以就可以通过z-index来控制页面中的重叠部分到底是Flash显示在上还是HTML结构显示在上。

当我们需要在页面中加载一个弹出Flash广告时,并且不希望它被页面中的其它Flash所遮挡时,就可以使用这种方法来解决。同样的如果这个弹出 Flash是不规则形状的时候,就可以将模式(wmode)设置为透明无窗口(transparent),这样即可以除去Flash本身所带有的背景。

解决Flash挡住层用z-index无效的问题的更多相关文章

  1. 解决flash挡住层的问题

    让div在flash上面 设置flash为透明: 插件代码换成如下: <object type="application/x-shockwave-flash" data=&q ...

  2. 解决FLASH遮住层的问题 IE,Firefox都适用!

    <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://down ...

  3. 下拉菜单被表单、图片、FLASH挡住的解决办法

    设置Flash的参数: <param name="wmode" value="opaque"> <object classid="c ...

  4. 解决FLASH最高层的问题,让FLASH置于div之下

    三个步骤:1.设置div 的 z-index:9999 //在最上面显示 这一步就可以保证div在img之上2.<param name="wmode" value=" ...

  5. flash挡住了下拉菜单

    遇到了flash挡住了菜单的疑难问题. 在网上查了资料,大部分都说是加一个 <param name="wmode" value="transparent" ...

  6. 谷歌下解决Pop遮罩层无法遮挡滚动栏下问题

    今天用pop的弹出窗体里,出现一个问题,当网页出现滚动栏里,不能遮挡住,解决Pop遮罩层无法遮挡滚动栏下问题. 可通过下载获取改动后的代码----->进入下载

  7. 实现combobox模糊查询的时候报错 InvalidArgument=“0”的值对于“index”无效

    因为要对combobox实现模糊查询,因为系统实现的匹配只能从左到右进行匹配,所以利用两个list来进行模糊匹配,主要代码如下: List<string> listOnit = new L ...

  8. 终极解决maya渲染层丢材质,变线框等问题

    终极解决maya渲染层丢材质,变线框等问题 相信有很多同志在使用maya做灯光渲染的时候,经常能遇到渲染层的模型丢材质.变线框等问题,特别恶心.我也经常遇到,所以和大家分享一下我的解决或尽量避免的方法 ...

  9. Adobe Edge Animate –地球自转动画的实现,类似flash遮罩层的效果

    Adobe Edge Animate –地球自转动画的实现,类似flash遮罩层的效果 版权声明: 本文版权属于 北京联友天下科技发展有限公司. 转载的时候请注明版权和原文地址. 目前Edge的功能尚 ...

随机推荐

  1. Android ViewDragHelper源码解析

    在自定义ViewGroup的过程中,如果涉及到View的拖动滑动,ViewDragHelper的使用应该是少不了的,它提供了一系列用于用户拖动子View的辅助方法和相关的状态记录,像Navigatio ...

  2. 计算机中的大小端模式及C语言中如何鉴别他们

    我的博客:www.while0.com 参考http://blog.csdn.net/ce123_zhouwei/article/details/6971544 写的很详细. 大小端主要是对数字类型来 ...

  3. Programming Concepts

    Attributes Attributes provide a powerful method of associating metadata, or declarative information, ...

  4. [ZOJ 3622] Magic Number

    Magic Number Time Limit: 2 Seconds      Memory Limit: 32768 KB A positive number y is called magic n ...

  5. 一点一点学ASP.NET系列

    转自:http://www.cnblogs.com/stwyhm/archive/2006/08/10/473075.html 做开发近两年了,自认为自己还算是个知道要上进的人,每天不停地学习,不停地 ...

  6. 搜索(DLX重复覆盖模板):HDU 2295 Radar

    Radar Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  7. PHPcurl抓取AJAX异步内容(转载)

    PHPcurl抓取AJAX异步内容 其实抓ajax异步内容的页面和抓普通的页面区别不大.ajax只不过是做了一次异步的http请求,只要使用firebug类似的工具,找到请求的后端服务url和传值的参 ...

  8. MySQL WorkBench中文教程

    在网上找到了一份MySQL WorkBench的教程,点此可以下载Work Bench教程(原文),为了便于学习和交流,请朋友帮忙翻译成了中文,点此可以下载Work Bench教程(中文翻译版). 具 ...

  9. Java的垃圾回收概述

    Java语言建立了垃圾收集机制,即GC,用以跟踪正在使用的对象和发现并回收不再使用的对象,垃圾清理势在必行,以下讲述java垃圾收集算法. 1.Java垃圾收集算法的核心思想 Java语言建立了垃圾收 ...

  10. B树,B-树,B+树,B*树

    B树 即二叉搜索树: 1.所有非叶子结点至多拥有两个儿子(Left和Right): 2.所有结点存储一个关键字: 3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树: 如: B ...