关于WEB开发下面DIV层被OCX控件拦住问题
控件分为有窗口控件与无窗口控件,无窗口控件很好办,如flash控件,可以通过添加wmode属性来解决挡住DIV层这个问题,添加的代码如下:
解决无窗口控件挡住DIV:
|
1
|
<param name="wmode" value="opaque"> |
测试的代码是:
测试DIV与OCX控件:
|
1
2
3
4
5
6
7
8
9
10
11
12
|
<div style="position: absolute; left: 120; top: 450; width: 400px; height: 200px; background: red; z-index: 7"> <object classid="CLSID:4B5BEE59-EDD2-4082-A9F7-D65E1CA20FA7"width="100" height="100"> </object> 是第6层</div><div style="position: absolute; left: 40; top: 500; width: 400px; height: 100px; background: Blue; z-index: 9"> 这是第7层</div>这是第7层</div> |
注:如果我们的控件是一个无窗口控件如flash控件,可以通过添加wmode属性来解决挡住DIV层这个问题,添加的代码如下:
|
1
|
<param name="wmode" value="opaque"> |
Html的iframe、frame可以挡住OCX控件——实际上iframe以及frame本身是一个有窗口元素,有窗口元素之间是可以互相遮挡的,而我们的Div又可以与iframe窗口互相遮挡。 现在的问题变成了如何先用iframe挡住OCX窗口再用DIV挡住iframe。
用iframe遮挡OCX控件
|
1
2
3
4
5
6
7
8
9
10
11
12
|
<div style="position: absolute; left: 120; top: 450; width: 400px; height: 200px; background: red; z-index: 7"> <object classid="CLSID:4B5BEE59-EDD2-4082-A9F7-D65E1CA20FA7"width="100" height="100"> </object> 是第6层</div><div style="position: absolute; left: 40; top: 500; width: 400px; height: 100px; background: Blue; z-index: 9"><iframe id='iframei' src="javascript:false" style="position:absolute; visibility:inherit; top:0px; left:0px; height:'100%';width:'100%'; z-index:-1; filter='progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)';/"></iframe>; 这是第7层</div> |
其中代码:
|
1
2
3
|
<iframe id='iframei' src="javascript:false" style="position:absolute; visibility:inherit; top:0px; left:0px; height:'100%';width:'100%'; z-index:-1; filter='progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)';/"></iframe>;” |
浙公网安备 33010602011771号