2011-05-17 3 views
0

私はIE6の問題に直面しています:IE6のコンボボックスにドロップダウンメニューを表示する方法は?

私のウェブサイトには、ドロップダウンメニューがあり、いくつかのページにはコンボボックスが含まれています。 メニューを展開してコンボボックスをカバーすると、コンボボックスは常にメニューの上に表示されます。

私のウェブサイトはIE6でのみ使用されるため、IE6でこの問題を解決し、そのような状況でドロップダウンメニューを表示させたいと考えています。ここで

は、問題を説明するコードスニペットです:

<html> 
<body> 
<!-- Menu --> 
<table width="20%" border="0" style="position:relative; z-index:100;"> 
    <tr> 
     <td colspan="0"> 

      <table style="background-color: #40668C; color: white; z-index:100;" width="100%"> 
       <tr> 
        <td>Agenda</td> 
       </tr> 

       <tr> 
        <td> 
         <table 
          align="right" 
          valign="top" 
          width="100%" 
          height="100%" 
          style=" visibility: visible; 
            position: absolute; 
            background-color: #40668C; 
            color: white; 
            top: 21px; 
            z-index:100;"> 

          <tr><td>Personnal</td></tr> 
          <tr><td>Group</td></tr> 
          <tr><td>Day</td></tr> 
         </table> 
        </td> 
       </tr> 
      </table> 
     </td> 
    </tr> 
</table> 
<!-- Combobox --> 
<form style="z-index: 0;"> 

    <TABLE style="z-index: 0;"> 

     <TR style="z-index: 0;"> 
      <TD style="z-index: 0;"> 
       <TABLE style="z-index: 0;"> 
        <TR style="z-index: 0;"> 
         <TD>Combobox :</TD> 
         <TD style="z-index: 0;"> 
          <SELECT style="z-index: 0;"> 
           <OPTION></option> 
           <OPTION>Element 1</option> 
           <OPTION>Element 2</option> 
          </select> 
         </TD> 
        </TR> 
       </TABLE> 
      </TD> 
     </TR> 
    </TABLE> 
</form> 

</body> 
</html> 

私はこの問題は既に報告されている知っているし、それが原因でIE6のだが、残念ながら、私は成功せず、これまでにさまざまなソリューションを試してみました。

ありがとうございます!

+0

私はページの別の部分にコンボボックスを移動するよりも、この他の周りに方法はありませんかなり確信していますそれは途中ではないということです。 – lazycs

+0

関連性が高い:http://stackoverflow.com/questions/224471/iframe-shimming-or-ie6-and-below-select-z-index-bug - 承認された回答にはすっきりしたhide/showコードが含まれており、リンクがあります別の答えで良いiframeシムフィックスに。 – thirtydot

答えて

0

IE6のバグです。

コンボボックスのCSS属性display: none;を設定してドロップダウンにホバーし、それ以外の場合はもう一度表示すること以外は方法がありません。

1

これは、IE6のZ-インデックスのバグの結果です。 select要素には高いzインデックスが与えられているため、常に他の要素の前に表示されます。

これを直す簡単な方法は、メニューが開いているときに選択を非表示にすることです。メニューを開くときに、このような関数を呼び出すことができます。

function hide_select(myelement){ 
    var select = document.getElementById('myelement'); 
    if(select.style.visibility == "hidden") 
    { 
     select.style.visibility="visible" 
    }else{ 
     select.style.visibility="hidden"; 
    } 
} 

リファレンス:http://www.tinyqueen.com/web-site-design/ie6-select-z-index-bug-a-workaround

関連する問題