CSS下拉子菜单文本问题

时间:2012-08-29 06:09:39

标签: html css

确定。所以我已经开始构建一个网站,我尝试使用css和html构建一个下拉菜单。子菜单的悬停功能有效。我唯一的问题是,当你鼠标悬停在菜单上进入子菜单时,我无法弄清楚如何将字体更改为黑色以便它可见。这是我正在测试代码的页面:{{3} }

这是我的代码:

CSS:

body {margin:0;
    padding:0;
    background:#000000
}

.image{
    border: none;
    border:0px;
    margin:0px;
    padding:0px;
    z-index: -1;
}


.menu{
    border:none;
    border:0px;
    margin:0px;
    padding:0px;
    font: 67.5% "Lucida Sans Unicode", "Bitstream Vera Sans", "Trebuchet Unicode MS", "Lucida Grande", Verdana, Helvetica, sans-serif;
    font-size:14px;
    font-weight:bold;
    z-index:2;
}
.menu ul{
    background:#FFFFFF;
    height:50px;
    list-style:none;
    margin:0;
    padding:0;
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    border-radius: 15px;
    -webkit-box-shadow: inset 0px 16px 0px 0px rgba(255, 255, 255, .1);
    -moz-box-shadow: inset 0px 16px 0px 0px rgba(255, 255, 255, .1);
    box-shadow: inset 0px 16px 0px 0px rgba(255, 255, 255, .1);
}
.menu li{
    float:left;
    padding:0px 0px 0px 15px; 
}
.menu li a{
    color:#000000;
    display:block;
    font-weight:normal;
    line-height:50px;
    margin:0px;
    padding:0px 25px;
    text-align:center;
    text-decoration:none;
}
.menu li a:hover{
    background:#000000;
    color:#FFFFFF;
    text-decoration:none;
    -webkit-box-shadow: inset 0px 0px 7px 2px rgba(0, 0, 0, .3);
    -moz-box-shadow: inset 0px 0px 7px 2px rgba(0, 0, 0, .3);
    box-shadow: inset 0px 0px 7px 2px rgba(0, 0, 0, .3);
}
.menu ul li:hover a{
    background:#000000;
    color:#FFFFFF;
    text-decoration:none;
}
.menu li ul{
    display:none;
    height:auto;
    padding:0px;
    margin:0px;
    border:0px;
    position:absolute;
    width:200px;
    z-index:200;
}
.menu li:hover ul{
    display:block;      
}
.menu li li {
    display:block;
    float:none;
    margin:0px;
    padding:0px;
    width:200px;
    background:#FFFFFF;
    /*this is where the rounded corners for the dropdown disappears*/
}
.menu li:hover li a{
        background:none;
}
.menu li ul a{
                display:block;
        height:50px;
        font-size:12px;
        font-style:normal;
        margin:0px;
        padding:0px 10px 0px 15px;
        text-align:left;
}
.menu li ul a:hover, .menu li ul li:hover a{
    border:0px;
    color:#ffffff;
    text-decoration:none;
    background:#000000;
    -webkit-box-shadow: inset 0px 0px 7px 2px rgba(0, 0, 0, .3);
    -moz-box-shadow: inset 0px 0px 7px 2px rgba(0, 0, 0, .3);
    box-shadow: inset 0px 0px 7px 2px rgba(0, 0, 0, .3); 
}   

HTML:

<div class="image">   
    <img src="/Resources/img/Header.png" width=100% style={margin:0;padding:0;}/></img>
</div> 
<div class="menu">
    <ul>
        <li><a href="#" >Home</a></li>
        <li>
            <a href="#" id="current">About</a>
            <ul>
                <li><a href="#">Company Info</a></li>
            </ul>
</div>

我出于某种原因无法弄清楚如何解决这个问题。

3 个答案:

答案 0 :(得分:1)

<强>编辑:

更改以下行

.menu ul li:hover a

这一行;

.menu ul li:hover > a

现在更具体。

SEE DEMO

答案 1 :(得分:1)

我对你的html做了一些修改(它被破坏了,一些元素多余了),以及你的css(删除了一些选择器并重写了其他内容)。

this类似于你的目标吗?

答案 2 :(得分:0)

color:#000上添加.menu li:hover li a

.menu li:hover li a{
    background:none;
    color:#000;

 }