造型菜单栏css

时间:2013-08-14 09:12:31

标签: css

我这里有一个菜单栏:http://jsfiddle.net/Qn3kh/1/
这是代码:
CSS:

ul#menu {
    position: absolute;
    width: 100%;
    min-width: 1180px;
    height: 35px;
    background-color: rgb(25, 25, 25);
    text-align: center;
    line-height: 2px;
}
#menuborders1{
    position: absolute;
    left: 0px;
    right: 0px;
    top: 6px;
    bottom: 6px;
    border-top: 3px solid rgb(30, 174, 206);
    border-bottom: 3px solid rgb(30, 174, 206);
}
#menuborders2{
    position: absolute;
    left: 0px;
    right: 0px;
    top: 5px;
    bottom: 5px;
    border-top: 1px solid rgb(255, 136, 0);
    border-bottom: 1px solid rgb(255, 136, 0);
}
ul#menu li {
    display: inline-block;
    margin-right: -3px;
}
ul#menu li a {
    position: relative;
    text-decoration: none;
    font-family: Arial;
    padding: 10px 75px 7px 75px;
    color: #fff;
}
ul#menu li.current a {
    color: rgb(25, 25, 25);
    background-color: #1EAECE;
}
ul#menu li a:hover {
    color: rgb(25, 25, 25);
    background-color: #FF8800;
}

HTML:

<ul id="menu">
    <div id="menuborders1">
    <div id="menuborders2">
        <li class="current"><a href="#" data-id="div1">Description</a></li>
        <li><a href="#" data-id="div2">Shipping and payment</a></li>
        <li><a href="#" data-id="div3">Returns</a></li>
        <li><a href="#" data-id="div4">Feedback</a></li>
    </div>
    </div>
</ul>

对我来说菜单显示如下(正常和悬停): enter image description here 但我希望它显示(正常和悬停): enter image description here

1 个答案:

答案 0 :(得分:1)

不确定我是否理解,但请尝试将bakground添加到a元素。它看起来像你的第二个附加图像。

ul#menu li a {
  background:black;
}

您必须在li元素之间注释空格:

<ul id="menu">
    <div id="menuborders1">
    <div id="menuborders2"><!--
        --><li class="current"><a href="#" data-id="div1">Description</a></li><!--
        --><li><a href="#" data-id="div2">Shipping and payment</a></li><!--
        --><li><a href="#" data-id="div3">Returns</a></li><!--
        --><li><a href="#" data-id="div4">Feedback</a></li><!--
    --></div>
    </div>
</ul>

http://jsfiddle.net/Qn3kh/4/

根据@Bojangles:

ul#menu{
  font-size: 0;
}
ul#menu li{
  font-size: 16px;
}

之后不需要评论。

http://jsfiddle.net/Qn3kh/8/

如果您想在hover上获得空间:

ul#menu li:not(.current) a:hover{
    color: rgb(25, 25, 25);
    background-color: #FF8800;
    margin: 0px 4px;
}

注意:这会将所有元素1px向左移动,1px向右移动。