flash 兼容性问题

flash背景透明

首先flash本身要透明,另外需要在<embed ***>标签中添加 wmode="transparent" 属性即可。

下面示例鼠标hover时背景变色,但flash是透明的。

<div class="flash">
    <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="500" height="100">
    <param name="movie" value="img/flash.swf">
    <param name="quality" value="high">
    <param name="menu" value="false">
    <param name="wmode" value="transparent">
    <embed src="flash.swf" wmode="transparent" menu=" false"="" quality="high" width="500" height="100" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer">
    </object>
</div>

标红为透明关键属性:
<param name="wmode" value="transparent"> 针对IE
<embed src="flash.swf" wmode="transparent" ... 针对firefox/chrome等

flash 层级问题

FLASH总挡住DIV,用这个办法把它优先级放到最下边。

FLASH优先级比DIV高, 所以会挡住DIV的。

里加入这个参数,将FLASH置于底层。

wmode的三个值解释:

  • "Window" 在 Web 页上用影片自己的矩形窗口来播放应用程序,并且始终位于最顶层。
  • "Opaque" 显示页面上位于它后面的内容。
  • "Transparent"使 HTML 页的背景可以透过应用程序的所有透明部分显示出来,并且可能会降低动画性能。

问题及注意事项:

实践出真知