Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I force nested list items to be the same width as parent list item?

I have a horizontal parent list. Some of the list items display a nested vertical list when clicked. How do I force the items in the vertical sub list to be the same width as the parent list item?

See jsFiddle.

enter image description here

HTML:

<ul class="mainMenu horizontalMenu bulletless fullWidth bold">
    <li class="showSubMenu">
        <div>Resumes &amp; Cover Letters &#x25BE; </div>
        <ul class="mainSubMenu bulletless">
            <li><a>Resumes</a></li>
            <li><a>Cover Letters</a></li>
            <li><a>Interviews</a></li>
        </ul>
    </li><li><a>Other Link</a>
    </li><li><a>Other Link</a></li>
 </ul>​

CSS:

.horizontalMenu li{    
    display: inline-block;
}
.mainMenu > li{
    border: 1px solid black;
}
.mainMenu a, .mainMenu div{
    display: block;
    padding: 10px 20px;

}
.mainSubMenu{
    position: absolute;
}
like image 367
dmr Avatar asked Jan 03 '13 19:01

dmr


People also ask

How do you increase the width of a list in CSS?

To set the width with css you should use either: ... style="width: 200px;"...

Can list be nested?

A nested list is a list inside another list. You can create a nested unordered list, or a nested ordered list, or even an ordered list nested inside an unordered one. Remember that the only direct child of the ul tag is li .


1 Answers

I did the change on your fiddle. http://jsfiddle.net/BXnxc/2/

The parent li needs to have position:relative; and the nested submenu has to have width:100%; and position:absolute;

like image 98
Kevin Krpicak Avatar answered Oct 15 '22 00:10

Kevin Krpicak