2

我的类名为“header-body-right”的 div 似乎没有浮动到名为“header-body-center”的 div 的左侧,我不明白为什么,这是我的 HTML,

    <!DOCTYPE HTML>
<HTML>
 <HEAD>
  <TITLE>  </TITLE>
  <meta charset="UTF-8" />
  <link href="main.css" rel="stylesheet" type="text/css">
  <META NAME="Generator"    CONTENT="Notepad">
  <META NAME="Author"       CONTENT="00">
  <META NAME="KEYWORDS"     CONTENT="" />
  <META NAME="DESCRIPTION"  CONTENT="" />
 </HEAD>

 <BODY>

    <div class="header-top">

    </div>

    <div class="header-body">

        <div class="header-body-centre">
            <div class="logo">
            <img src="logo.png" />
            </div>
        </div>

        <div class="header-body-right">
            test
        </div>

    </div>



    <div class="navbar">

    </div>

    <div class="content-container">

    </div>
 </BODY>

</HTML>

我用于代码的 CSS 发布在下面,

 body
{   
    margin:0px;
    padding:0px;
}

.header-top
{
    height:11px;
    width:100%;
    background-image: url('HeaderTopNav.png');
    background-repeat: repeat-x;
}
.header-body
{
    width:100%;
    height:100px;
}
.header-body-centre
{
    margin: 0 auto;
    height:100%;
    width:70%;
}

.header-body-right
{
    width:15%;
    height:100px;
        float:left;

}

.navbar
{
    height:35px;
    width:auto;
    border: 1px solid green;
}
.logo
{
    margin-top:35px;
    float:left;
}

.quickNav
{
    float:right;

}

.container
{
    margin: 0 auto;
    background-color: #fff;
    border: 2px solid #c9c8c8;
    border-bottom: none;
    height:auto;
    overflow:hidden;
    width: 1000px;
    clear:both;
 }

谁能明白为什么?我试过浮动 header-bosy-center 并减小 header-body-right 的宽度,但没有任何效果。谁能看到我做错了什么?我没主意了。谢谢。

4

2 回答 2

4

为了让元素并排,您必须浮动两个元素。这个 css 浮动 .header-body-center 也离开了,导致元素并排出现。

.header-body-centre
{
    margin: 0 auto;
    height:100%;
    width:70%;
    float: left;
}

由于浮动元素的行为方式,您之前的样式不起作用。当一个元素浮动时,它会脱离文档的正常流程。它向左或向右移动,直到它接触到它的包含框或另一个浮动元素的边缘。

https://developer.mozilla.org/en/CSS/float

于 2012-04-07T17:18:42.663 回答
1

给你伙计:http: //jsfiddle.net/YpAN8/1/

.header-body-centre
{
    height:100%;
    width:70%;
    float:left;
    margin-left:15%;
    background-color: yellow; /* remove this */
    margin-left:
}

.header-body-right
{
    width:15%;
    height:100px;
    float:left;
    background-color: red; /* remove this */

}
于 2014-01-23T10:59:23.857 回答