css ul li nested menu with a padding. How on hoover retain width of the menu? -
example here http://jsfiddle.net/v8yhk7lr/
html
<div class="navig_div" id="mainnavig_div" > <ul class="mnav-ul"> <li class="mnav-ul-li"><a href="#">option one</a> <ul class="mnav-ul-ul"> <li><a href="#">option 1 1</a> </li> <li><a href="#">option 1 one longer</a> </li> </ul> </li> <li class="mnav-ul-li"><a href="#gg">option 2 long text</a> <ul class="mnav-ul-ul"> <li><a href="#">option 2 1</a> </li> <li><a href="#">option 2 1 longer</a> </li> </ul> </li> <li class="mnav-ul-li"><a href="#">option three</a> <ul class="mnav-ul-ul"> <li><a href="#">option 3 1</a> </li> <li><a href="#">option 3 1 longer</a> </li> </ul> </li> </ul> </div>
css
.mnav-ul-li { float: left; display: block; } .mnav-ul-li { display:inline-block; padding:10px 25px; } .mnav-ul-ul { display: none; } .mnav-ul-li:hover > ul { display: block; }
mouse on over option one
, see nested menu. option 2 long text
, option three
moves right. want option 2 long text
, option three
remain @ same place (or option one
have same width before mouse over).
can set width .mnav-ul-li { float: left; display: block; width:150px; }
(example here http://jsfiddle.net/v8yhk7lr/1/) in such case longer text in 2 lines , 1 item may short text, long text, space between navigation items different. padding space same between items).
how retain width on hover (on hover keep same width before hover)?
.mnav-ul-li:hover > ul - add position: absolute;
.mnav-ul-li { float: left; display: block; position: relative; } .mnav-ul-li { display:inline-block; padding:10px 25px; } .mnav-ul-ul { display: none; } .mnav-ul-li:hover > ul { display: block; position: absolute; top: 30px; left: 0; }
<div class="navig_div" id="mainnavig_div" > <ul class="mnav-ul"> <li class="mnav-ul-li"><a href="#">option one</a> <ul class="mnav-ul-ul"> <li><a href="#">option 1 1</a> </li> <li><a href="#">option 1 one longer</a> </li> </ul> </li> <li class="mnav-ul-li"><a href="#gg">option 2 long text</a> <ul class="mnav-ul-ul"> <li><a href="#">option 2 1</a> </li> <li><a href="#">option 2 1 longer</a> </li> </ul> </li> <li class="mnav-ul-li"><a href="#">option three</a> <ul class="mnav-ul-ul"> <li><a href="#">option 3 1</a> </li> <li><a href="#">option 3 1 longer</a> </li> </ul> </li> </ul> </div>
Comments
Post a Comment