Blogger下拉菜单

时间:2014-03-04 20:09:24

标签: css blogger submenu

这是我博客模板的Css代码。

我试图修复每一个细节,但我仍然面临问题...当我在maim菜单元素上胡扯时,我可以看到下拉菜单,但当我尝试胡佛时,我无法点击子菜单项它在子菜单窗口中消失了。

你能帮我解决一下吗

.post {
    border:1px solid #000000;
    border-style:solid;
    border-radius:10px;
    -moz-border-radius:10px;
    -webkit-border-radius:10px;
    background:#ffffff;
    margin:0.1em .5em;
    padding:0px 15px 0px 15px
}
.Header h1 {
    text-shadow: 4px 4px #191919;
}
/*----- MBT Drop Down Menu ----*/
#mbtnavbar {
    /* background: #a3a3a3; */
    width: 960px;
    color: #FFF;
    margin: 30px;
    padding: 0;
    position: relative;
    border-top:0px solid #000000;
    height: 5px;
}
#mbtnavbar {
    borderleft:0px solid #000000;
    border-right:0px solid #000000;
    border-bottom:0px solid #000000;
}
#mbtnav {
    background:#ededed;
    margin: 0;
    padding: 0;
}
#mbtnav ul {
    float:left;
    list-style: none;
    margin: 0;
    padding: 0;
}
#mbtnav li {
    list-style: none;
    margin: 0px;
    padding: 0px;
    /* border-left:1px solid #333; border-right:1px solid #333; */
    height:40px;
}
#mbtnav li a, #mbtnav li a:link, #mbtnav li a:visited {
    color: #000000;
    display: block;
    font:bold 22px Times new roman, Tahoma, Helvetica, FreeSans, sans-serif;
    margin: 0px;
    padding: 9px 12px 10px 12px;
    text-decoration: none;
}
#mbtnav li a:hover, #mbtnav li a:active {
    background: none;
    color: #000000;
    display: block;
    text-decoration: underline;
    margin: 0px;
    padding: 9px 12px 10px 12px;
}
#mbtnav li {
    float: left;
    padding: 0px;
}
#mbtnav li ul {
    z-index: 9999;
    position: absolute;
    left: -999em;
    height:160px;
    width: 170px;
    margin: 0px;
    padding: 0;
    border-bottom:1px solid #000000;
    border-top:1px solid #000000;
    border-right:1px solid #000000;
    border-left:1px solid #000000;
}
#mbtnav li ul a {
    width: 180px;
}
#mbtnav li ul ul {
    margin: -25px 0 0 161px;
}
#mbtnav li:hover ul ul, #mbtnav li:hover ul ul ul, #mbtnav li.sfhover ul ul, #mbtnav li.sfhover ul ul ul {
    left: -999em;
}
#mbtnav li:hover ul, #mbtnav li li:hover ul, #mbtnav li li li:hover ul, #mbtnav li.sfhover ul, #mbtnav li li.sfhover ul, #mbtnav li li li.sfhover ul {
    left: 295px;
}
#mbtnav li:hover, #mbtnav li.sfhover {
    position: static;
}
#mbtnav li li a, #mbtnav li li a:link, #mbtnav li li a:visited {
    background: #f1f1f1;
    /* width: 100px; */
    color: #000000;
    display: block;
    font:bold 14px Times new roman, Tahoma, Helvetica, FreeSans, sans-serif;
    margin: 0;
    padding: 9px 12px 10px 12px;
    text-decoration: none;
    z-index:9999;
    border-bottom:1px solid #000000;
}
#mbtnav li li a:hover, #mbtnavli li a:active {
    background: none;
    color: #000000;
    display:block;
    margin: 0;
    padding: 9px 12px 10px 12px;
    text-decoration: underline;
}
.tabs-inner .widget #mbtnavbar li a {
    border-left:none;
}
.tabs-outer .widget, .section {
    margin:0;
}
.tabs-inner {
    padding: 0px;
}

1 个答案:

答案 0 :(得分:0)

解决方案的一般想法是将li元素设为position:relative,因为它们包含子菜单ul元素(绝对定位)。

子菜单ul元素应该left:0或类似,以将它们放在父元素旁边。

position:relative;添加到规则#mbtnav li#mbtnav li:hover, #mbtnav li.sfhover,并在规则上设置left: 0px;而不是left: 295px;

#mbtnav li:hover ul, 
#mbtnav li li:hover ul, 
#mbtnav li li li:hover ul, 
#mbtnav li.sfhover ul, 
#mbtnav li li.sfhover ul, 
#mbtnav li li li.sfhover ul

会生成有效的菜单 在http://jsfiddle.net/gaby/aX3hh/

进行演示

如需更多帮助,您需要提供代码的工作演示..


<强>更新

在看到实际网站后,问题在于将height属性设置为错误的值..

你需要

  • height: 30px;规则
  • 中删除#mbtnavbar
  • height: 41px规则
  • 中删除#mbtnav li
  • height: 160px;规则中删除#mbtnav li ul,您也需要从此规则中删除border-bottom:1px solid #000000;

之后它应该可以正常工作