首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 头疼的问题,求解 [已结贴,结贴人:yxwonline]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2007-10-15 11:04:28 楼主
    我的导航用DIV做的。导航下面是body页面body页面中,有select列表框,当我鼠标放到导航上时,显示下面的导航,但是,此时,select 列表就会遮盖住div导航,怎么让它不遮盖住啊?
    20  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2007-10-15 11:52:121楼 得分:0
    在IE以外的浏览器都没有这个问题
    在IE里,可以在div里放一下frame,把内容写到iframe里
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2007-10-15 13:33:152楼 得分:0
    我不是做这个的。。所以很头痛。。。。楼上的高手是说:把导航放到iframe里面吗? 怎么放?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2007-10-15 14:12:313楼 得分:2
    select的优先级太高好想总是在上面不能被遮盖。126邮箱的做法是在显示div时将select隐藏掉当不再显示时再显示select,或者不用select用text 图片 和div来模拟
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2007-10-15 15:41:084楼 得分:0
    但是现在下面的select不能隐藏啊.....还有什么高招啊?
    我给帖子加分!欢迎大家来讨论.没想到UI还这么深奥啊....厉害! 嘿嘿~````
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2007-10-15 15:42:105楼 得分:0
    我加分..系统提示:此帖发出时间不到5天  不到5天不能加分吗?郁闷....
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2007-10-16 16:34:196楼 得分:3
    我也遇到过此问题,select是不能被div,span等组件覆盖的。
    唯一的办法就是,导航时将该document.all.tags('SELECT')[i].style.visibility = 'hidden';
    ,用完以后再document.all.tags('SELECT')[i].style.visibility = 'visible';
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2007-10-17 15:12:597楼 得分:0
    thank you  every one  ! and more?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2007-10-19 09:01:058楼 得分:0
    http://topic.csdn.net/u/20070515/16/d8ee44d6-7b3f-431c-b041-77c17b06c7c8.html
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2007-10-19 09:01:579楼 得分:0
    只有IE6版本以下有些问题,IE7已经修复了
    其它浏览器也没有这个bug
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2007-10-19 09:42:5410楼 得分:5
    我有个简单的方法

    JScript code
    function selectFix(odiv) { if(document.all) { var oiframe = document.createElement("iframe"); oiframe.frameBorder=0; oiframe.style.position="absolute"; oiframe.style.zIndex=-1; if(odiv.childNodes.length>0) { odiv.appendChild(oiframe); } else { odiv.insertBefore(oiframe,odiv.firstChild); } odiv.onresize = function(){ oiframe.style.width = this.clientWidth; oiframe.style.height = this.clientHeight; } } }
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2007-10-19 09:51:0711楼 得分:8
    其实就是在div的最前面插入一个浮动的iframe 并且通过style.zIndex将其设置为在Div的最底层。大小与DIV的大小相等。这样就可以帮助div遮挡select,并且无需做其他处理。

    JScript code
    function selectFix(odiv)//odiv是你的div实例 { if(document.all)//简单判断是否是IE(我偷懒了) { var oiframe = document.createElement("iframe");//创建iframe oiframe.frameBorder=0; oiframe.style.position="absolute";//浮动 oiframe.style.zIndex=-1;//放在最后面 if(odiv.childNodes.length>0)//将iframe插入到div的最前面 { odiv.appendChild(oiframe); } else { odiv.insertBefore(oiframe,odiv.firstChild); } //如果div改变大小 就靠这个事件改变iframe的大小 odiv.onresize = function(){ oiframe.style.width = this.clientWidth; oiframe.style.height = this.clientHeight; } odiv.onresize();//不好意思,忘了先调用一次了。 } }
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2007-10-19 11:51:5012楼 得分:2
    如楼上的,就是利用一个与select同级的iframe来档住select。iframe和层的位置、宽度高度一样,透明度设为0就得了,而且这问题是IE6才有,IE7和FireFox不会有这问题。
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    世纪乐知(北京)网络技术有限公司 版权所有 京 ICP 证 020026 号
    Copyright © 2000-2007, CSDN.NET, All Rights Reserved