html - 为什么 nav 元素环绕其上方的标签

标签 html css

当我放置 <nav>在我的里面 <header>该元素似乎包裹了 <p></p>在它之上。

http://jsfiddle.net/otherDewi/u2xNN/

HTML

<header class="clearfix">
        <h1 id="heading">Main Heading</h1>
        <h2>Sub Heading</h2>
        <p>Tagline - Lorem ipsum dolor sit amet. Dolore, corporis.</p>

    <div id="home" class="landing">     

    </div><!--end #home-->
    <nav class="clearfix main-nav">
        <ul class="clearfix">
            <li><a href="#home">Home</a></li>
            <li><a href="#about">About</a></li>
            <li><a href="#video">Video</a></li>
            <li><a href="#contact">Contact</a></li>
        </ul>
    </nav>     
</header>

CSS

header {
    text-align: right;
}

header p {
    float: right;
}

.main-nav {
    width: 100%;
    background-color: #d3eafc;
}

.main-nav ul {
    clear: both;
    list-style: none;
    padding: 0;
    margin: 10px 0;
}

.main-nav ul li {
    float: left;
    list-style: none;
    width: 150px;
    border-right: 1px solid #999;
}

.main-nav a:link,
.main-nav a:visited {
    display: block;
    line-height: 30px;
    text-align: center;
    color: #fff;
    text-decoration: none;
}

最佳答案

知道了..

发生这种情况是因为 nav由于没有设置高度以及 <p>,栏正在折叠正在漂浮。

您有 2 个选项,要么添加一个 overflow ,或 float nav<p>旁边

.main-nav {
    overflow: hidden;
}

或者..

.main-nav {
    float: right;
}

Updated jsFiddle

关于html - 为什么 nav 元素环绕其上方的标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19061945/

相关文章:

.net - 将 PPTX 演示文稿转换为 HTML 的库

html - Google Chrome 输入文本被截断。是字体问题还是浏览器?

html - CSS - 文本溢出不适用于基于百分比的 div

java - 在 Java 中运行 Javascript 表单请求

html - css: column-count property - 如何用css修改它来修改每列中的元素数?

php - 无法显示 Font-Awesome 图标

php - HTML/PHP 网站的 ASP.NET 母版页等效项

css - Chrome 37 计算四舍五入

html - 无序列表不像 div 中的 h1 那样对齐

javascript - 如何在两个文本(css 或 js)之间放置线