我有一个HTML菜单,它使用一个类来显示网站中当前活动的页面。
<div id="menu">
<ul>
<li class="activelink"><a href="index.html">Home</a></li>
<li><a href="early.html">Growing Up and School</a></li>
<li><a href="career.html">Films</a></li>
<li><a href="jamesbond.html">James Bond</a></li>
<li><a href="gallery.html">Pictures</a></li>
</ul>
</div>
当我设计菜单时,我使用Firefox来预览本地文件,它看起来很好。但是,当我在Chrome和IE浏览器中查看菜单时,显示哪个菜单项处于活动状态的背景在菜单中垂直偏离。
事实上,当我将代码复制到该jsfiddle并在Firefox中查看时,出现了与Chrome和IE相同的问题,但出于某种原因,我本地文件上的菜单看起来仍然很好。我猜我的菜单样式错了,但我无法解决。基本上,显示当前链接的较暗的红色背景应与较浅的红色菜单垂直对齐。
答案 0 :(得分:1)
答案 1 :(得分:1)
当#menu
高40像素时,ul
高30像素高。现在,事实是您的所有li
元素都具有相同的高度并且溢出ul
。你没有注意到它,因为它们具有透明的背景。
我添加了一些背景颜色,以便您可以更好地直观显示:
li {background: rgba(0,64,128,0.5);}
您可以在此处查看:http://jsfiddle.net/C9mZG/4/
一种可能的解决方案是让你的#menu
更高。或者,您可以减少li
元素的填充。
BTW:您还会注意到,由于li
的宽度,您的上一个#menu
会转到另一条线上,从而破坏了您的布局。