div 被Object蓋住的。解決辦法


今天遇到一個比較頭疼的問題,就是在一個標簽上右鍵,彈出的菜單div被標簽內的Office控件Object擋住了下半部分,始終無法顯示。查了好多解決方案,最終都不能解決問題,幾乎都要放棄了。中午吃飯的時候,腦海中又一個勁兒的想這個問題,突然,來了一點靈感,回去之后,抓緊時間試了一下,終於解決了!終於可以放松一下了!以下是該問題解決的一點總結,希望對大家有所幫助!

<div id="contextmenu" style="width: 120px; height:120px;DISPLAY: none; top: 26px; left: 300px;z-index:999999">
    <ul>
        <li>關閉</li>
        <li>刷新</li>
        <li>關閉其他</li>
        <li>關閉全部</li>
    </ul>
    <iframe id="iframe1" src="about:blank" frameBorder="0" marginHeight="0" marginWidth="0" style="position:absolute; visibility:inherit; top:0px;left:0px;width:120px; height:120px;z-index:-1; filter:alpha(opacity=0);"></iframe>
</div>

 好了,說明一下:div為右鍵菜單div,被object遮擋,於是在該div中增加一個iframe,通過iframe來遮擋select下拉列表或Object控件,因為iframe的級別高於select下拉列表和Object控件,而又由於div能夠遮擋iframe,所以可以通過在div中加入iframe來解決該類問題。其中有幾點需要注意:1.div必須有特定的z-index且大於iframe的z-index,不能是auto或空;2.iframe的z-index必須為負(之前一直設置為正值,雖然小於div的z-index,但一直不能被div遮蓋),否則,div無法遮蓋iframe;3.iframe的top和left為0,且iframe的寬、高與div的寬高相等;4.注意設置iframe的透明度為0.

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM