第三列div无法正确定位

时间:2013-07-15 10:22:48

标签: css css3 html

我不知道它是否难以解释,但在这里它...我的页面上有很多div,我希望它们以列布局形式出现。该页面有一个导航栏,一个徽标,一些个人资料数据和另外3个div。这三个div没有正确对齐。第一个是左侧浮动,第二个是在此之后,因此也是浮动的。我希望第三个浮动正确,但与前两个一致。

请参阅此fiddle

我希望.commitment_box div能够与那些.major_data一致地浮动。

CSS:

.major_data {
    margin: 110px auto;
    width: 40%;
}
.major_data .profile_box p:first-child {
    border-bottom: 0px;
    text-align: center;
    font-size: 20px;
    margin-top: 0px;
    background-color: #eee;
    font-weight: bold;
}
.major_data .profile_box p:nth-child(2) {
    text-align: justify;
    padding-left: 5px;
    padding-right: 5px;
    margin-top: -20px;
}
.major_data .profile_box p {
    border: 1px solid #bbb;
}
.commitment_box { /*the div i want to be floated right in alignment with those about boxes */
    margin-top: -58.2%;
    text-align: center;
    height: 40px;
    overflow: hidden;
    background-color: lightblue;
    color: white;
    font-size: 20px;
    width: 25%;
    margin-right: 2%;
    float:left;
}
.commitment_box .commitment p {
    display: inline-block;
    margin-top: 1.5%;
}
.commitment_box .commitment p:first-child {
    font-weight: bold;
    margin-right: 20px;
}

HTML:

<div class="commitment_box">
    <!--/*the div i want to be floated right in alignment with those about boxes */-->
    <div class="commitment">
        <p>Alex:</p>
        <p>He's works great.aidhoaishdoaishdoaishdoaishdoaihdoaishdoaishdoasihdoasidhoasihd</p>
    </div>
    <div class="commitment">
        <p>Alex 1:</p>
        <p>He's works great.</p>
    </div>
    <div class="commitment">
        <p>Alex 2:</p>
        <p>He's works great.</p>
    </div>
    <div class="commitment">
        <p>Alex 3:</p>
        <p>He's works great.</p>
    </div>
    <div class="commitment">
        <p>Alex 4:</p>
        <p>He's works great.</p>
    </div>
</div>

2 个答案:

答案 0 :(得分:1)

尽量避免浮动。这不是一个很好的编码风格。

将大部分设为 inline-block 元素并提供它们,例如 width: 30%

这是一个 jsFiddle ,其简化的样式会让您看到重要的更改

答案 1 :(得分:0)

你需要在.major_data框中放置一个浮动:左边,并在两个框上放置相同的上边距。