css - Blogger 下拉菜单

标签 css blogger submenu

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

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

你能帮我一下吗

.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;
}

最佳答案

解决方案的总体思路是使 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 属性设置为错误的值。

你需要

  • #mbtnavbar 规则中移除 height: 30px;
  • #mbtnav li 规则中移除 height: 41px
  • #mbtnav li ul 规则中删除 height: 160px;(您还需要删除 border-bottom:1px solid #000000; 也来自这条规则)

之后它应该可以正常工作

关于css - Blogger 下拉菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22181931/

相关文章:

css - 将 <input type=submit 按钮的 CSS 样式恢复为其默认样式

css - 试图将我的博客标题向上移动

gridview - ExtJS 4 网格标题中未显示子菜单项

css - @font-face 不适用于 OS X Yosemite Chrome 26 - 版本

html - 如何在下面的演示右侧添加图像?

jquery - CSS 位置已修复,未将标题固定到顶部

search - Blogger 多标签搜索

wordpress - 自动同步 wordpress 帖子与 blogger.com blogspot

css - 悬停时子菜单异常

css 变形子菜单第二个选项和 z-index