Это было довольно просто выяснить, и большое спасибо @NateL в #jquery на IRC за помощь в выяснении CSS на этом.
Вот что я реализовал:
CSS
.all-checkboxes-menu
{
position: absolute;
width: auto;
height: auto;
display: none;
top: 28px;
left: 7px;
background-color: white;
z-index: 1;
box-shadow: 0px 5px 5px #999;
-moz-box-shadow: 0px 5px 5px #999;
-webkit-box-shadow: 0px 5px 5px #999;
}
.tasks-submenu
{
padding: 5px;
}
.tasks-submenu li
{
list-style: none;
padding-top: 2px;
padding-bottom: 2px;
}
.tasks-submenu li:hover
{
background-color: #fcf7bd;
}
HTML
<div class="all-checkboxes-menu">
<ul class="tasks-submenu">
<li>All</li>
<li>None</li>
<li>Due Today</li>
<li>Overdue</li>
</ul>
</div>
Важнейшей частью CSS является position: absolute
, и родительский div должен быть явно задан position: relative
.Обратите внимание, что display: none
используется изначально.В коде jQuery я вызываю .css({'display': 'block'})
, чтобы показать подменю.
Результат выглядит следующим образом: