2016-06-25 30 views
2

ドロップダウンメニューに問題があり、どこからでも見えていますが、私にとってうまくいく答えが見つかりませんでした。 問題は、表示メニューにカーソルを合わせると、要素がクリックされる前に消えてしまうことです。CSS:表示リストから要素をクリックしようとするとドロップダウンメニューが表示されなくなる

<ul id="menu"> 

    <li><a href="#title">Home</a></li> 
    <li><a href="#part_1">Commandes de base --->></a> 
    <ul class="hidden"> 
     <li><a href="#ls">ls</a></li> 
     <li><a href="#cd">cd</a></li> 
     <li><a href="#mv">mv</a></li> 
     <li><a href="#cp">cp</a></li> 
     <li><a href="#mkdir">mkdir</a></li> 
     <li><a href="#cat">cat</a></li> 
     <li><a href="#find">find</a></li> 
     <li><a href="#grep"></a></li> 
    </ul> 
    </li> 

    <li><a href="#part_2">Commandes sytème --->></a> 
    <ul class="hidden"> 
     <li><a href="#top">top</a></li> 
     <li><a href="#chmod">chmod</a></li> 
     <li><a href="#du">du</a></li> 
     <li><a href="#reboot"></a></li> 
    </ul> 
    </li> 

</ul> 

、ここでCSSです:

/*Menu*/ 

#menu { 
    float: left; 
} 

ul { 
    list-style:none; 
    width: 150px; 
    display:inline-block; 
    border: 1px solid black; 
} 

#menu li { 
    /*border: 1px solid black;*/ 
    margin-bottom: 0px; 
} 

#menu li a:hover { 
    font-weight: bold; 
} 

.hidden { 
    margin-top: 0px; 
} 

/*Hide elements*/ 

#menu li ul li { 
    display: none; 
} 

/*Reveal elements on hover*/ 

#menu li a:hover + .hidden li, .hidden:hover { 
    display:block; 
} 

私はそれが戻ってディスプレイに設定します「ギャップ」を避けるために、0の余裕を与え、多くのことを試してみました:どれも、作るんより虚偽のホバリングゾーンのための大きなボックス...これまでの結果は、私は何もすることができます前に、テキストが常に消えます。

ありがとうございました。

答えて

1

マウスを慎重にサブメニューに移動すると、サブメニューを表示することができます。

/* I added 'li' to the end of second rule and used !important 
    to combat the style being overridden */ 

#menu li a:hover + .hidden li, .hidden:hover li { 
    display:block !important; 
} 

enter image description here

https://jsfiddle.net/6wLevbt9/

+0

それは働いた!さらに私はCSSで新しいプロパティを学んだ:!重要。あなたの助けをありがとう、非常に感謝! – EtienneDh

+0

まあ、私はその質問に答えましたが、一般的にはこの道を邪魔することはありません。あなたがしようとしていることを達成するためのより良い方法があります。 [こちら](http://www.howtocreate.co.uk/tutorials/testMenu.html)と[ここ](https://www.thecssninja.com/css/css-tree-menu)をご覧ください。知っておいた方が良いですが、 '!important'は通常、CSSの問題を解決する最後の試みとして使用されます。幸運なことに、@EtienneDh –

1

検査ツールをオンにします。おそらく、あなたが上に乗るエリアを大きくする必要があります。ドロップダウンメニューから選択しようとすると、ドロップダウンメニューが表示されているホバーエリアをマウスで「オフ」にします。

+0

はい、私は修正しようとしている問題のthatsがある打者に役立つかもしれません検査ツールは私がその地域を見るのを助けてくれましたが、私はまだその地域を大きくするために苦労しています、少し調整した後、それは良くなっていますがそれは正しく選択するのが難しくなる多くの揺れます – EtienneDh

関連する問題