Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CSS菜单帮助(第二个菜单消失)_Css_Menu - Fatal编程技术网

CSS菜单帮助(第二个菜单消失)

CSS菜单帮助(第二个菜单消失),css,menu,Css,Menu,我正试图把这个css菜单放在一起,但我无法让它正常工作。当你们浏览顶部菜单中的任何链接时,它会打开第二个菜单,尽管当你们点击它时第二个菜单会消失。另外,它放错地方了。我无法将其放置在左侧:0 #菜单{宽度:800px;背景色:FFF;最小高度:30px;边框:0;边框顶部:2px实心#8BD2E4;填充:0 5px;边距:0自动;} #nmenu{list style:none;padding:0;margin:0;width:700px;} #nmenu li{display:inline;

我正试图把这个css菜单放在一起,但我无法让它正常工作。当你们浏览顶部菜单中的任何链接时,它会打开第二个菜单,尽管当你们点击它时第二个菜单会消失。另外,它放错地方了。我无法将其放置在左侧:0

#菜单{宽度:800px;背景色:FFF;最小高度:30px;边框:0;边框顶部:2px实心#8BD2E4;填充:0 5px;边距:0自动;}
#nmenu{list style:none;padding:0;margin:0;width:700px;}
#nmenu li{display:inline;float:left;height:20px;margin left:45px;position:relative;}
#nmenu li.frst{左边距:0}
#nmenu li a{字体:11px/30px Tahoma,日内瓦,无衬线;文本装饰:无;颜色:#979598;字母间距:2px;字体重量:粗体;文本转换:大写;}
#smedia{width:100px;height:30px;float:left;}
#fb,#tw,#pt{背景:#FFF url(smedia.png)无重复中心;宽度:16px;高度:16px;显示:块;浮点:右;边距:7px 3px;}
#fb{背景位置:-1px-1px;}
#tw{背景位置:-18px-1px;}
#pt{背景位置:-35px-1px;}
#nmenu li ul{显示:无;位置:绝对;顶部:30px;左侧:0;边框:1px纯红色;背景色:#FFF;}
#nmenu li:悬停ul{display:block}
#nmenu li ul li{浮点:左;宽度:100px;}

您的绝对定位在容器
    子元素之间留有间隙。减小
    #nmmenu li ul{}

    上的“top”值,您正在对列表项而不是
    li
    中的链接项应用高度,因此,移动高度,并对与菜单块高度匹配的
    a
    标记应用线条高度,然后您可以简单地重新定位子菜单,使其完全显示在菜单项之外,如下所示:

    CSS

    #nmenu li a {
       height:30px;
       line-height:30px;
       display:block;
    }
    
    #nmenu li ul {
       top:100%;
    }
    

    要修复消失的菜单:添加5px底部填充到顶层锚点,这将消除元素之间的间隙

    “错位”问题是由于
    ul
    li
    元素上的默认填充和边距造成的。明确设置边距和填充以定位边距

    试试下面的css:

    #nmenu li {
        display: inline;
        float: left;
        margin-left: 44px;
        position: relative;
    }
    
    #nmenu li ul {
        background-color: #FFFFFF;
        border: 1px solid red;
        display: none;
        left: -5px;
        padding: 0;
        position: absolute;
        top: 30px;
    }
    
    #nmenu li a {
        color: #979598;
        display: block;
        font: bold 11px/30px Tahoma,Geneva,sans-serif;
        letter-spacing: 2px;
        padding-left: 2px;
        text-decoration: none;
        text-transform: uppercase;
    }