html - 我的 CSS 菜单有什么问题?

标签 html css xhtml menu

结果是:http://img198.imageshack.us/img198/746/93502273.jpg

您可以在侧面看到明显的“空白”。

我有:

<div id="nav">
    <ul>
        <li id="n-home"><a href="/">Home</a></li>
        <li id="n-search"><a href="/search/">Search</a></li>
        <li id="n-advertisers"><a href="/advertisers/">Advertisers</a></li>
        <li id="n-something"><a href="/something/">Something</a></li>
        <li id="n-contact"><a href="/contact/">Contact</a></li>
    </ul>
</div>

/* Navigation
---------------------------------------------------------- */

#nav {
    font-family: Geneva, Arial, Helvetica, sans-serif;
    }
#nav ul {
    margin: 0;
    padding: 0;
    list-style: none;
    background-color: #f5f5f5;
    width: 100%;
    }
#nav li {
    float: left;
    margin: 0;
    padding: 0;
    background-color: #f5f5f5; 
    }
#nav li a {
    float: left;
    margin: 0 1px 0 0;
    padding: 4px 9px;
    font-size: 100%;
    font-weight: normal;
    text-decoration: none;
    color: #111;
    }

#nav li a:hover {
    text-decoration: underline;
    }

最佳答案

问题是你的 <ul>技术上不包含任何内容,因为所有 <li>元素是 float 的。这意味着 <ul>并没有真正的“内部”来渲染。

解决方案就像添加 overflow:hidden 一样简单给你的#nav ul风格。这是对所谓的 clearfix hack 的巧妙解决方法。

这是一篇有趣的博文 about the clearfix issue如果您想了解更多相关信息。

关于html - 我的 CSS 菜单有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1892391/

相关文章:

javascript - 使 JavaScript 代码适用于任何元素

javascript - 如何在菜单部分滚动后线性显示背景颜色?

html - (X)HTML 中的未定义行为?

JavaScript-HTML : Create ComboBox with non-selectable items

html - 具有相同名称属性的输入字段的多个表单?是好是坏?

html - 有谁知道为什么这种音频在FireFox中不起作用?

html - 如何修复 'Image not loading when loaded in mobile' ?

javascript - 如何设置文件上传按钮的样式

html - 在网站上居中图标

java - 如何设置 <p :column> in a <p:dataTable> ? primefaces 的宽度和边距