我有一个我一直无法弄清楚的 CSS 问题。基本上,我有一个固定宽度和高度的菜单。菜单的背景只是一个图形,带有一个灰色条,下面有一个阴影。这是该菜单的CSS:
#menu
{
width:1024px;
height:63px;
background: url(../images/menuholder.jpg);
margin:0px;
}
我有一个控制菜单选项的 CMS,但是对于这个例子,我对它们进行了硬编码。我正在使用 CSS 将元素垂直放置在正确的位置,在灰色条上,垂直居中,这很好。这是问题所在:我试图在每个菜单选项之间放置一条 1px 宽的白色 (#fff) 线。我宁愿完全通过 CSS 来完成这项工作,而不是使用保存的图像。我能够使用以下代码(在某种程度上)做到这一点:
<div id="menu">
<div id="upperNavLinks">
<ul>
<li style="border-right: 1px solid #fff;"><a href="Option1.aspx" target="_self">Option 1</a></li>
<li style="border-right: 1px solid #fff;"><a href="Option2.aspx" target="_self">Option 2</a></li>
<li style="border-right: 1px solid #fff;"><a href="Option3.aspx" target="_self">Option 3</a></li>
<li style="border-right: 1px solid #fff;"><a href="Option4.aspx" target="_self">Option 4</a></li>
<li style="border-right: 1px solid #fff;"><a href="Option5.aspx" target="_self">Option 5</a></li>
</ul>
</div>
</div>
它背后的css是:
#upperNavLinks
{
float:left;
padding-top:0px;
padding-left:0px;
}
#upperNavLinks ul
{
list-style-type:none;
}
#upperNavLinks ul li
{
float:left;
}
#upperNavLinks ul a {
padding-right: 18px;
padding-left: 18px;
display: block;
text-decoration: none;
font-family:PT Sans, Arial, Helvetica, sans-serif;
font-size: 11pt;
font-weight:bold;
color: #333333;
}
#upperNavLinks ul a:hover
{
font-weight:bold;
color: #a31624;
}
问题是,它会在我想要的位置生成一条白线,但是我需要它从灰色条的顶部开始,然后向下移动到灰色条的底部,而不是在阴影上方。灰色条的大小(垂直)为:44px。
所以,我的问题是:如何使白线锁定在灰色条的顶部,并在灰色条上方覆盖 44px(而不是超过)垂直空间,同时让实际菜单选项浮动在中心像现在这样的图形?
如果这没有任何意义,我可以在某处发布实际的图形和代码。