2011-09-12 12 views
0

私の最後の質問で私が助けてくれた人もいます。とても感謝しています。残念ながら、私はInternet Explorer上で奇妙な問題に陥っています。IEのJquery問題

ここに私のコードがあります。Familyのリスト項目をクリックすると、その背景は子供たちに広がります。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
     <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 

     <script type="text/javascript"> 
      $(document).ready(function() { 
       $("#flip_1").click(function() { 
        $("#panel_1").slideToggle("slow"); 
       }); 
      }); 
     </script> 

     <style type="text/css"> 
      .navigation ul { 
       font-size: 12px; 
       list-style-type: none; 

       padding: 0; 
       margin: 0; 
      } 


      .navigation { 
       float: left; 
       width: 200px; 
      } 

      .navigation li { 
       background-color: #F5F2EE; 
       background-position: left top; 
       background-repeat: no-repeat; 
       border: 1px solid #E9E3DD; 
       height: auto; 
       margin-bottom: 4px; 
       padding: 4px 5px 4px 20px; 
      } 

      .navigation li:hover { 
       background-color: #DEB887; 
       cursor: pointer; 
      } 

      .nodisplay { 
       display:none; 
      } 
     </style> 
    </head> 

    <body> 
     <div class="navigation"> 
      <ul> 
       <li><a href="">First</a></li> 
       <li><a href="">Second</a></li> 
       <li><a href="">Other Things</a></li> 
       <li><a href="">Process</a></li> 

       <li id="flip_1"> 
        <span>Family</span> 
       </li> 

       <div id="panel_1" class="nodisplay"> 
        <ul> 
         <li> First</li> 
         <li> Second</li> 
        </ul> 
       </div> 

       <li>More</li> 
      </ul> 
    </body> 
</html> 

family歳未満の子供li sが他の項目のように表示され、それらがfamily背景色に囲まれているようではないことをとにかくありますか?この奇妙な動作は、Internet Explorerの互換性ビューでのみ発生します。

+0

私が編集する前に、コードは絶対に混乱していました。また、 '{padding:0;マージン:0; } 'それはセレクタを持っていないので、有効なCSSです。 – Bojangles

答えて

1

実際これは他のブラウザでも同様に起こります。 .navigation li selectorを.navigation> liセレクタに変更する必要がある場合は、直下の子のみに影響を与え、すべての子孫には影響を与えないようにする必要があります。私はそれがあなたが求めているものだと思いますか?

+0

また、3番目の背景色が必要な場合は、.navigation li liセレクタを追加できます。 – krasnerocalypse

+2

子セレクタ '>'は、QuirksModeが言うにもかかわらず、IE7では機能しません。 – Bojangles