2016-04-11 16 views
0

まず、文法上の間違いをお詫びしたいと思います。 私の問題は、CSSとJavaScriptを使ってHTMLでレスポンシブなドロップダウンメニューを作ったのですが、ウェブページを600pxより小さくすると、ドロップダウン部分を除いてすべてが機能します。 "Kezdőlap"、 "Rajzok"、 "Festmények"などがありますが、 "Fekete-fehérgrafikák"などは表示されません。したがって、ul>li>ul>li部分を意味します。それが600pxの幅より小さいとき。HTML、CSS、JS対応のドロップダウンメニュー

すべてを表示するには、このコードを改善する必要があります。だから、ここHTMLの一部は次のとおりです。

<nav> 
    <ul class="menu"> 
     <li><a href="#">Kezdőlap</a></li> 
     <li> 
      <a href="rajzok.html"><span>Rajzok</span></a> 
      <ul class="menu"> 
       <li><a href="rajzok.html">Fekete-fehér grafikák</a></li> 
       <li><a href="szinesrajzok.html">Színes képek</a></li> 
       <li><a href="negative.html">Negatív rajzok</a></li> 
      </ul> 
     </li> 
     <li> 
      <a href="festmenyek.html"><span>Festmények</span></a> 
      <ul> 
       <li><a href="festmenyek.html">Fekete-fehér</a></li> 
       <li><a href="szinesfestmenyek.html">Színes</a></li> 
      </ul> 
     </li> 
     <li><a href="kapcs.html">Kapcsolat</a></li> 
       <li><a href="insp.html">Inspiráció</a></li> 
       <li><a href="other.html">Egyéb alkotások</a></li> 
       <li class="ikon"><a href="javascript:void(0);" onclick="myFunction()">&#9776;</a></li> 
    </ul> 
</nav> 

私はこのようになりますCSSコード(それがいっぱいではありませんが、私はあなたが私の問題を理解することができますね)持っている:

@media (max-width:600px) { 
    nav li:not(:first-child) {display: none;} 
    nav li.ikon {float: right; display: inline-block;} 
    nav ul.kibont {position: relative;} 
    nav ul.kibont li.ikon {position: absolute; right: 0; top: 0;} 
    nav ul.kibont li {float: none; display: block;} 
    nav ul.kibont li a {display: block; text-align: left;} 
} 

とJS:

function myFunction() 
{ 
    document.getElementsByClassName("menu")[0].classList.toggle("kibont"); 
} 

答えて

0

あなたは

nav li:not(:first-child) {display: none;} 
と、リスト内の最初のではない任意の liを隠しています

他のliを表示するには、それを変更する必要があります。

+0

私はそれを表示に変更する:ブロックするか、この行を削除すると、メインの第1レベルのすべてのliが表示されますが、それをしたくないですが、2番目のulのli-sを表示したいと思いますli-s。あなたは私を理解していますか? – chuck

+0

'nav li.hidden-small {display:none;}のようなCSSルールを作成することができます。 } 'あなたのメディアクエリの中に入れて、あなたが隠したいものに' hidden-small'クラスを置くだけです。 – tyler

+0

私の問題は、最初のulの中にすべての李が表示されているとき、私はちょうど主要な部分を示すので、サブメニューの間で選択することができません... – chuck