DIV覆盖DropDownList

解决方案 »

  1.   

    两种解决方案:(1)在Div中放1个空的iframe
        <select size="1"> 
    <option value="a">a</option> 
    <option value="b">b</option>
     </select> 
    <div class="f"><iframe width="0" height="0" frameborder="0"></iframe>我是导航菜单,谁敢挡住我?</div>(2)把DropDownList用Span包裹起来
    <span style="z-index:-9999"> 
    <select size="1"> 
    <option value="a">a</option> 
    <option value="b">b</option> 
    </select>
    </span> <div class="f">我是导航菜单,谁敢挡住我?</div>注明:在IE7中,select也有了z-index属性,所以div在IE7中可以挡住select。
      

  2.   

    在前端代码设计的时候会碰到这样的情况:IE6以及一下版本下,选择框Select会覆盖Div中的内容。提供一个比较简单的方法来解决这个问题。一般情况下,可以将显示的内容放到Iframe中,然后再显示框架内的内容。由于Iframe的可以显示在Select上层,就可以解决这个问题。不过这样做在实现上比较麻烦。有个解决的部分就是在Div内容中加入不显示的Iframe框架即可,不用修改其他内容。<div>
    <iframe style="position:absolute; z-index:-1;" frameborder="0" src="about:blank"></iframe>
    <a href="#">Overview</a>
    </div><select>
    <option>Domain</option>
    </select>以上代码的重点就是加粗部分。直接加一个空白的框架页面和将页面内容加入到框架,在实现起来更加的方便。只要在需要的Div中加入一句话就可以直接实现效果。
      

  3.   

    IE 中有两种基本的窗口元素模型: window 和 windowless,window 永远呈现在 windowless 上面, ActiveX、 iframe、 select(dropdownlist) 属于前者,z-index 只对同一种模型有用。所以如果想让Div遮盖DropDownList,必须让Div提升为 window 元素,可以在里面放一个iframe来提升。或者把DropDownList编程 windowless 元素,可以把它放在span里面降低。通过这两种方法,把Div和DropDownList的元素类型变得相同之后,就可以通过设置style.z-Index来设置他们的展现层次了。再吃重申:在IE7中,select也有了z-index属性,所以div在IE7中可以挡住select。
      

  4.   

    用弹出窗口window.popup
    除了显示器可挡住一切!
      

  5.   

    window.popup 有例子吗
    我没找到啊
      

  6.   

    我用的是笨办法,就是js控制 div显示的时候,就把dropdown隐藏,反之就显示 ,哈哈,无非是多一句js
      

  7.   

    我把DIV当做一个弹出的提示框,
    可是有的时后会背DropDownList盖住一部分
      

  8.   

    http://www.google.com/search?hl=zh-CN&q=DIV%E8%A6%86%E7%9B%96DropDownList&btnG=Google+%E6%90%9C%E7%B4%A2&lr=lang_zh-CN
      

  9.   

    1,2,3都已经能解决问题了。不知道楼主还在找什么。在你要弹出的Div里面加一个空的<iframe>就可以了。你自己试过没呀?
      

  10.   


    var pop;
    function createTipWindow()
    {
        pop=window.createPopup();
        var pbody=pop.document.body;  
        pbody.style.backgroundColor="#f0f8ff";
        pbody.style.textAlign="left";
        pbody.style.border="solid Green 1px";
        pbody.innerHTML="<font size=2>正在处理请求,请稍候……</font>";
    }
    function showProcessTip(toShowTip)
    {             
        if (pop==null) 
        {
            createTipWindow();
        }  
        if (toShowTip)
        {
            pop.show((window.top.screen.width-200)/2,(window.top.screen.height-200)/2,170,20,document.body);
            setTimeout(showProcessTip,tipInteval);
        }  
        else
        {
          pop.hide();        
        }
    }
      

  11.   

    还有 
    toShowTip 是全局变量(上面没写) 表示当前窗口是否打开
    --------
    上面程序不一定全 例子而已 
      

  12.   

    我用的是加入IFRAME的方法,测试通过有一点要注意:
    就是你的IFRAME的大小要略大于DIV的大小,这样才不会出现部分被挡住,部分不被挡住的情况.
      

  13.   

    哈哈,我也是这样干的,不喜欢用iframe...