【问题标题】:Weird CSS/Nav Blank Space奇怪的 CSS/Nav 空格
【发布时间】:2011-09-20 04:27:53
【问题描述】:

你好堆栈溢出社区,我们又见面了。我用 CSS 创建了这个两级导航栏,我得到了一切工作,但对于一个小问题,有一个我似乎无法摆脱的空白

这里是 HTML

<ul id="nav-top">
        <li><a href="default.asp">Home</a></li>
        <li><a href="news.asp">News</a></li>
        <li><a href="contact.asp">Contact</a></li>
        <li><a href="about.asp">Join TGA</a></li>
    </ul>

    <img src="wp-content/themes/tga/pictures/topbanner.jpg" id="top-banner" />
    <div id="header">
    <ul id="nav-bottom">
            <li><a href="#">Percoidei</a>
        <ul>
            <li><a href="#">Remoras</a></li>
            <li><a href="#">Tilefishes</a></li>
            <li><a href="#">Bluefishes</a></li>
            <li><a href="#">Tigerfishes</a></li>
        </ul>
    </li>

    <li><a href="#">Anabantoidei</a>
        <ul>
            <li><a href="#">Climbing perches</a></li>
            <li><a href="#">Labyrinthfishes</a></li>
            <li><a href="#">Kissing gouramis</a></li>
            <li><a href="#">Pike-heads</a></li>
            <li><a href="#">Giant gouramis</a></li>
        </ul>
    </li>

这里是 CSS

#nav-bottom{
    list-style-type:none;
    height: 34px;
    margin:0;
    padding:0;
    overflow:hidden;
    background-image: url(pictures/nav-graphic.png);
    line-height: 2;
}

#nav-bottom li:hover {
    list-style-type:none;
    height: 34px;
    margin:0;
    padding:0;
    overflow:hidden;
    line-height: 2;
    background-color: #494949;
    color: white;
}

#nav-bottom li{
    float:left;
}

#nav-bottom a{
    display:block;
    width:100px;
    text-decoration: none;
    color: black;
}



#nav-bottom li ul {
    position: absolute;
    width: 10em;
    left: -999em;
    list-style-type:none;
    background-color: #494949;
    color: white;
}


#nav-bottom li ul li a {
    color: white;
    width: 10em;
    border-bottom:1px solid white;
}

#nav-bottom li ul li a:hover {
    color: white;
    width: 10em;
    background-color: #2a2a2a;
    text-align: left;
    border-bottom:1px solid white;
}

#nav-bottom li:hover ul {
    left: auto;
}

这是它的样子

看下面的链接(抱歉没有代表点上传图片)

我做错了什么导致那个空白?


好的,这是我正在谈论的空白区域 http://i52.tinypic.com/dcsg9j.png

我将它上传到 jsfiddle(很酷的开发网站喜欢它),它在那里工作正常,你认为我的浏览器有问题吗(在 mac 上运行的 chrome 14.0.835.163)它也在 Firefox 中的空白处吗? http://jsfiddle.net/donvito101/ZWeVq/

【问题讨论】:

  • Thomas,你能指出你认为哪个空间是空白的吗?很多空间可能被认为是空白的 :) 您还应该尝试在 Firefox 中使用 Firebug,或者 Chrome 和 Safari 中内置的网络检查器。您可以查看每个元素的计算样式,并希望了解空间的来源。
  • 有点跑题了,但是当鼠标悬停时,我会更改菜单上的文本颜色。深灰色上的黑色看起来不太好;)

标签: css uinavigationcontroller navigation uinavigationbar


【解决方案1】:

我猜你的意思是缩进子菜单的空格? 在这种情况下,这可能是因为您在子菜单中开始一个新的,它总是缩进的。为#nav-bottom ul 放置几个像素的负填充(或边距?),你应该会很好!例如

#nav-bottom ul { padding-left: -15px; }

【讨论】:

  • 谢谢!但是我尝试了您使用 padding-left 或 margin-left 的理论,要么什么都不做,要么它做到了i53.tinypic.com/5xsk1z.png
  • 我认为我们在这方面是正确的。尝试 #nav-bottom li ul li a {padding-left:-15px;} 或给子菜单链接或列表点 (
  • ) 一个单独的类/id,并给它们负填充/边距。我个人更喜欢后者,只是为了让整个 css 代码更简洁。
猜你喜欢
相关资源
最近更新 更多
热门标签