[英]CSS/HTML menu not showing correctly
I'm trying to create a 2-level menu where level 1 is displayed horisontally and level 2 is displayed vertically. 我正在尝试创建一个2级菜单,其中1级水平显示,2级垂直显示。 No fancy folding, just a plain sitemap'ish menu. 没有花哨的折叠,只是一个普通的sitemap'ish菜单。
How it looks now: 现在的样子:
How I would like it to look: 我希望它看起来如何:
my html: 我的html:
<nav class="menu">
<ul class="lvl1">
<li class="lvl1"><a href="#">Lorem</a></li>
<ul class="lvl2">
<li class="lvl2"><a href="#">Vino</a></li>
<li class="lvl2"><a href="#">Fino</a></li>
<li class="lvl2"><a href="#">Dolce</a></li>
<li class="lvl2"><a href="#">Vita</a></li>
<li class="lvl2"><a href="#">Mamma Mia</a></li>
</ul>
<li class="lvl1"><a href="#">Ipsum</a></li>
<ul class="lvl2">
<li class="lvl2"><a href="#">Vino</a></li>
<li class="lvl2"><a href="#">Fino</a></li>
<li class="lvl2"><a href="#">Dolce</a></li>
<li class="lvl2"><a href="#">Vita</a></li>
<li class="lvl2"><a href="#">Mamma Mia</a></li>
</ul>
<li class="lvl1"><a href="#">Dolor</a></li>
<ul class="lvl2">
<li class="lvl2"><a href="#">Vino</a></li>
<li class="lvl2"><a href="#">Fino</a></li>
<li class="lvl2"><a href="#">Dolce</a></li>
<li class="lvl2"><a href="#">Vita</a></li>
<li class="lvl2"><a href="#">Mamma Mia</a></li>
</ul>
<li class="lvl1"><a href="#">Sit</a></li>
<ul class="lvl2">
<li class="lvl2"><a href="#">Vino</a></li>
<li class="lvl2"><a href="#">Fino</a></li>
<li class="lvl2"><a href="#">Dolce</a></li>
<li class="lvl2"><a href="#">Vita</a></li>
<li class="lvl2"><a href="#">Mamma Mia</a></li>
</ul>
<li class="lvl1"><a href="#">Amet</a></li>
<ul class="lvl2">
<li class="lvl2"><a href="#">Vino</a></li>
<li class="lvl2"><a href="#">Fino</a></li>
<li class="lvl2"><a href="#">Dolce</a></li>
<li class="lvl2"><a href="#">Vita</a></li>
<li class="lvl2"><a href="#">Mamma Mia</a></li>
</ul>
</ul>
</nav>
my css: 我的CSS:
.menu ul {list-style: none; }
ul.lvl1 {display: table; }
li.lvl1 {display: table-cell; font: bold 1.8em BlenderHeavy; color: white; }
ul.lvl2 {display: block; }
li.lvl2 {display: block; font: normal 1.2em BlenderHeavy; color: silver; }
This is simple, I suppose, but I am a css rookie. 我想这很简单,但是我是CSS新秀。
Your HTML is invalid. 您的HTML无效。
Try it: 试试吧:
.menu ul { list-style: none; } ul.lvl1 { display: table; } li.lvl1 { display: table-cell; font: bold 1.8em BlenderHeavy; color: white; } ul.lvl2 { display: block; } li.lvl2 { display: block; font: normal 1.2rem BlenderHeavy; color: silver; } ul ul { padding: 0; }
<nav class="menu"> <ul class="lvl1"> <li class="lvl1"><a href="#">Lorem</a> <ul class="lvl2"> <li class="lvl2"><a href="#">Vino</a> </li> <li class="lvl2"><a href="#">Fino</a> </li> <li class="lvl2"><a href="#">Dolce</a> </li> <li class="lvl2"><a href="#">Vita</a> </li> <li class="lvl2"><a href="#">Mamma Mia</a> </li> </ul> </li> <li class="lvl1"><a href="#">Ipsum</a> <ul class="lvl2"> <li class="lvl2"><a href="#">Vino</a> </li> <li class="lvl2"><a href="#">Fino</a> </li> <li class="lvl2"><a href="#">Dolce</a> </li> <li class="lvl2"><a href="#">Vita</a> </li> <li class="lvl2"><a href="#">Mamma Mia</a> </li> </ul> </li> <li class="lvl1"><a href="#">Dolor</a> <ul class="lvl2"> <li class="lvl2"><a href="#">Vino</a> </li> <li class="lvl2"><a href="#">Fino</a> </li> <li class="lvl2"><a href="#">Dolce</a> </li> <li class="lvl2"><a href="#">Vita</a> </li> <li class="lvl2"><a href="#">Mamma Mia</a> </li> </ul> </li> <li class="lvl1"><a href="#">Sit</a> <ul class="lvl2"> <li class="lvl2"><a href="#">Vino</a> </li> <li class="lvl2"><a href="#">Fino</a> </li> <li class="lvl2"><a href="#">Dolce</a> </li> <li class="lvl2"><a href="#">Vita</a> </li> <li class="lvl2"><a href="#">Mamma Mia</a> </li> </ul> </li> <li class="lvl1"><a href="#">Amet</a> <ul class="lvl2"> <li class="lvl2"><a href="#">Vino</a> </li> <li class="lvl2"><a href="#">Fino</a> </li> <li class="lvl2"><a href="#">Dolce</a> </li> <li class="lvl2"><a href="#">Vita</a> </li> <li class="lvl2"><a href="#">Mamma Mia</a> </li> </ul> </li> </ul> </nav>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.