如果打开的页面有任何子项,我正在开发一个扩展菜单。它看起来像这样:
http://jsfiddle.net/phacer/qzykv/
只是在浅灰色的内部菜单下面有一些来自其 <li> 父级的填充。我正在考虑使用行高,但在某些地方,菜单项是两行文本。而且我还需要在每个项目之间使用虚线边框。
关于如何获得我现在拥有的东西但没有为有孩子的父母提供的任何建议?
html:
<nav>
<ul class="menu"><li class="first"><a href="#" title="" >Home</a></li>
<li class="active"><a href="#" title="" >Home</a><ul><li class="first"><a href="#" title="" >Home</a></li>
<li><a href="#" title="" >Home</a></li>
<li class="last"><a href="#" title="" >Home</a></li>
</ul></li>
<li><a href="#" title="" >Home</a></li>
<li><a href="#" title="" >HomeHome HomeHome Home HomeHome </a></li>
<li><a href="#" title="" >Home</a></li>
<li><a href="#" title="" >Home</a></li>
<li><a href="#" title="" >Home</a></li>
<li class="last"><a href="#" title="Contact" >Contact</a></li>
</ul>
</nav>
CSS:
nav { width: 165px; min-height: 500px; position: relative; display: inline-block; float: left; }
nav ul li { padding: 10px 0 10px 20px; }
nav ul li a { margin-right: 10px; max-width: 125px; }
nav ul li.first { padding-top: 23px; }
nav ul li ul { margin-left: -20px; margin-top: 10px; }
nav ul li ul li { padding-left: 30px; }
nav ul li ul li.first { padding-top: 10px; }
nav ul li ul li ul { margin-left: -30px; margin-top: 10px; }
nav ul li ul li ul li{ padding-left: 40px; }
nav ul li ul li ul li.first { padding-top: 10px; }
nav ul li.active ul li a,
nav ul li.active ul li a:visited,
nav ul li.active ul li.active ul li a,
nav ul li.active ul li.active ul li a:visited { color: #5c5c5c; }
nav a:hover,
nav ul li.active a { color: #e0001b; }
nav ul li.active ul li.active a,
nav ul li.active ul li.active ul li.active a,
nav ul li.active ul li a:hover,
nav ul li.active ul li.active a:hover { color: #91298e; }
nav { background: #5c5c5c repeat-x left top; }
nav ul li { border-bottom: 1px dotted #fff; }
nav ul li ul { background: #d6d6d7; }
nav ul li ul li { border-bottom: none; border-top: 1px dotted #555; }
nav ul li ul li ul { background: #ecedee; }
nav { font-size: 12px; list-style-type: none; line-height: 14.5px; text-align: left; }