Animating max-height to overcome height:auto limitation
by Shidhin C R
HTML
<ul>
<li class="main">item1
<ul>
<li>submenu1</li>
<li>submenu2</li>
</ul>
</li>
<li class="main">item2
<ul>
<li>submenu1</li>
<li>submenu2</li>
</ul>
</li>
<li class="main">item3
<ul>
<li>submenu1</li>
<li>submenu2</li>
</ul>
</li>
<li class="main">item4
<ul>
<li>submenu1</li>
<li>submenu2</li>
</ul>
</li>
</ul>
CSS
ul,li {
list-style: none;
}
li.main {
float:left;
display: block;
border: 1px solid #000;
width: 100px;
background-color: #ccc;
text-align:center;
margin: 3px;
cursor: pointer;
overflow: hidden;
font-weight: bold;
}
li.main ul {
max-height: 0px;
padding: 0;
font-weight: normal;
-moz-transition: 0.5s;
-ms-transition: 0.5s;
-o-transition: 0.5s;
-webkit-transition: 0.5s;
transition: 1s;
}
li.main:hover ul {
max-height:999px;
}
li.main ul li {
margin : 2px;
}
li.main ul li:hover {
background-color: orange;
color: white;
}