切换风格

默认梦幻1 梦幻9 白云 简约黑色 花卉 简约米色 城市 粉色心情 雪山 绿野仙踪 伦敦 薰衣草 加州 星空
回复 0

72

主题

369

帖子

522万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5221595
解决DIV层被OBJECT、SELECT控件遮盖问题[复制链接]
发表于 2018-9-26 09:11:01 | 显示全部楼层 |阅读模式
       浮动层或便捷菜单给用户操作极大的便利。使用IE6、7时,SELECT控件不能被DIV遮盖。OBJECT控件也不能被DIV遮盖。究其原因,大多表单控件或HTML控件是使用浏览器本身渲染绘制,因此层次可以由浏览器自身控制。而SELECT控件是Windows窗口控件,同样可见型ActiveX容器也是使用面向Windows技术开发。它们表现实质仍是相同,都是Windows窗口包含句柄。因此,浏览器不能对其调整层次,浏览器本身与他们都是平级的。尽管IE8中解决了SELECT控件的问题,但OBJECT控件依然没办法改变。
参考网上的资料经过研究,有这样的关系。Iframe框架可以遮盖OBJECT、SELECT,DIV可以遮盖Iframe。因此,我们可以将Iframe放置在DIV层内,将Iframe大小宽度设置成与层一样放置在层之下,当层经过OBJECT、SELECT时,下方的框架将替层遮盖其不能遮盖的控件。
需要说明的是使用HTML标签属性设置显示层次,必须是z-Index而不是zIndex。zIndex是使用脚本动态修改属性使用。两者不通用。
下面给出一段示例:
<div id="DominoActionBar" style='position:absolute; left:6px; top:50px; width:100%; height:45px; z-Index:9'>
……
<iframe id='iframebar' src="about:blank" frameBorder=0 marginHeight=0 marginWidth=0
  style="position:absolute; visibility:inherit; top:0px;left:0px;height:100%;width:100%; z-Index:-1; filter='progidXImageTransform.Microsoft.Alpha(style=0,opacity=0)';">
     </iframe>
</div>

需要说明的是top属性要设置成0,不然将显示不了层而是框架。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|Archiver|手机版|小黑屋|阿西里西官网论坛 ( 黔ICP备15005599号-4 )

GMT+8, 2020-8-4 04:51 , Processed in 0.067843 second(s), 24 queries .

Powered by Discuz! X3.4

© 2001-2018 阿西里西论坛 html php TP5资源下载群②

返回顶部