如何让网页其他元素在flash上方显示

接到说要在一个在首页flash上面加多个超链接的任务,一开始只要设置好z-index属性就可以了。没想到浮动,position,z-index什么属性都试遍了,图片总是在flash下方显示。真搞不懂怎么可以这么霸道。

于是就求助了万能的百度,找到一篇文章《如何让飘动的图片显示在FLASH上面的方法》,说的刚好就是我要的效果,于是一试,果不其然。。。

方法是这样的,在Flash的标记内加入下面的代码:

<!-- lang: html -->
<param name="wmode" value="opaque">

,看了看源代码,原来的value是Window,改了值之后,图片便位于flash之上了,效果达到,剩下的position就不是问题了。

事后查找了下资料,

window 模式

默认情况下的显示模式,在这种模式下flash player有自己的窗口句柄,这就意味着flash影片是存在于Windows中的一个显示实例,并且是在浏览器核心显示窗口之上的,所以flash只是貌似显示在浏览器中,但这也是flash最快最有效率的渲染模式。由于他是独立于浏览器的HTML渲染表面,这就导致默认显示方式下flash总是会遮住位置与他重合的所有DHTML层。

但是大多数苹果电脑浏览器会允许DHTML层显示在flash之上,但当flash影片播放时会出现比较诡异的现象,比如DHTML层像被flash刮掉一块一样显示异常。

Opaque 模式

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

Transparent 模式

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

由于原来网页太简单,没看出后两种的效果差别。总结,想flash很霸道的显示在最上一层,用window模式,想让flash上还可以显示其他元素,考虑后两种模式。

参考资料:

http://hi.baidu.com/hirjgd/item/0a887c12a6e5a0ef9913d65a

http://www.blueidea.com/tech/web/2009/6469.asp

转载于:https://my.oschina.net/u/614344/blog/113902

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值