2017-01-17 7 views
0

上のホバー私は私のメニューとサブメニューCSSの表示 - 幅メニュー李

マイメニューとCSSの幅の問題を抱えているがhorizo​​ntalyのようなものです - <li>のときホバー<li>の幅は、自動で

<ul> 
<li> Menu <div style="diplay:none"> Submenu </li> 
<li> Menu <div style="diplay:none"> Submenu </li> 
</ul> 

ディスプレイが、divの幅が<li>よりも大きいとき、私は私が

を合わせるたび <li>幅が動かないことをしたいのギャップ

があります

私がホバリングしたときに<li>の幅を固定しておく解決策はありますか?彼らはすべてのスペースを取りませんので、

おかげ

+2

は、あなたの質問には、最小限の完全かつ検証可能な例が含まれている必要があり、StackOverflowのへようこそ(http://stackoverflow.com/help/mcve)[ここで方法です]。また、私はこの質問が以前に答えられたと信じています。ドロップダウンメニューの作成方法を尋ねているようです。 – hungerstar

+0

こんにちは、私は私のドロップダウンメニューがありますが、私は、サブメニューが開いているときにliの幅を修正したい –

+0

通常、サブメニューは(相対位置を使用する)親要素内に完全に配置されています。 – hungerstar

答えて

1

は通常のドロップダウンメニューには、それらの比較的位置付け親要素内で絶対的に配置されています。

ここは基本的な例です。必要に応じて変更します。

ul, li { 
 
    margin: 0; 
 
    padding: 0; 
 
} 
 

 
.menu li { 
 
    display: inline-block; 
 
    background-color: rgba(123, 123, 123, 1); 
 
    cursor: pointer; 
 
} 
 
.menu li:hover { 
 
    background-color: rgba(123, 123, 123, 0.5); 
 
} 
 
.has-submenu { 
 
    position: relative; 
 
} 
 
.has-submenu li { 
 
    display: block; 
 
} 
 
.has-submenu > ul { 
 
    display: none; 
 
    position: absolute; 
 
    width: 100%; 
 
} 
 
.has-submenu:hover > ul { 
 
    display: block; 
 
}
<ul class="menu"> 
 
    <li>Item</li> 
 
    <li class="has-submenu"> 
 
    Item with submenu 
 
    <ul> 
 
     <li>Item</li> 
 
     <li>Item</li> 
 
    </ul> 
 
    </li> 
 
    <li>Item</li> 
 
</ul>

+0

あなたの助けてくれてありがとうございます、この仕事に私は絶対にこの位置を置いていたのを忘れていました。ub –

+0

クール、相対的な;親と祖先の要素が正しいため、サブメニューはページのどこかで終わることはありません。 – hungerstar

+0

はい、私はそれを理解しています。なぜなら、私は絶対的な位置を使わなかったのです –

関連する問題