DIV层被Flash或表单遮盖的解决方法

来源:互联网 发布:吴亦凡在美国人气知乎 编辑:程序博客网 时间:2024/05/17 00:55
在网页制作中,经常会遇到DIV层被Flash、input、select等控件遮住一部分的现象。
这时单单用z-index属性根本毫无作用。
以下是几种解决方法——

方法一:
对于Flash控件,在<object>中增加属性<param name="wmode" value="opaque">或<param name="wmode" value="transparent">即可。

opaque和transparent基本上差不多,只是在某些特殊情况下有点不同。
opaque在flash中需要用到输入法时输入法软件会定位不准。
transparent在同一页面中用得太多的话会有性能问题。

参考文章:
  Flash content and z-index
  Z-Index and Flash

方法二:
对于input或select等表单控件,可以通过把DIV的内容放入iframe或object里来解决。

方法三:
方法二如果用不好有可能会破坏页面的结构,互动性不大好。

还有另一种方法,
虽说DIV直接盖不住select,
但是DIV可以盖iframe,而iframe可以盖select,
所以,把一个iframe用来当作DIV的底,

这个DIV就可以盖住select了


通过OFC2可以进行设置。
swfobject.embedSWF("ofc2/flash/open-flash-chart.swf", "Flashhere", "100%", "100%", "9.0.0",null,null,{wmode:'opaque'});

swfobject为一个ofc2的对象。设置这个属性,就可以解决问题。