1

我正在尝试将一些 div 对齐到此结构中,但没有任何效果。

<div>
     <div>top</div>
     <div>middle
          <div>left</div> <div>right</div>
     </div>
     <div>bottom</div>
</div>

我尝试过使用带有绝对值、块等的浮点数,我得到的最接近的是块内联,但我需要右对齐的 div 只是靠近左 div,我添加了文本右对齐,没有任何乐趣。

非常感谢 D

4

3 回答 3

1

试试这个

<div>
    <div>top</div>
    <div>
        <div style="float:left;">left</div>
        <div style="float:left;">right</div>
    </div>
    <div style="clear:both;">bottom</div>
</div>

带有 clear:both 的底部 div 可能还不够,但在这个特定示例中可以解决问题

谷歌clearfix为此

于 2012-07-04T16:42:10.930 回答
0

leftrightdiv awidth让他们float

确保您还通过在下面添加一个额外的 div 来清除浮动:clear: both;

代码:

<div id="wrap">
     <div id="top">top</div>
     <div id="mid">
         <div id="left">left</div>
         <div id="right">right</div>
         <div class="clear"></div>
     </div>
     <div id="bot">bottom</div>
</div>​

CSS:

div {
    background: #ccc;
    height: 15px;
    margin-bottom: 10px;
}

.clear {
    clear: both;
}

#wrap {
    width: 400px;
}

#top {

}

#mid {

}

#left {
    float: left;
    width: 200px;
}

#right {
    float: left;
    width: 200px;
}

#bot {

}
​

请参阅实际代码:http: //jsfiddle.net/GZg6y/

于 2012-07-04T16:41:54.700 回答
0

您可以通过不同的方式执行此操作,一种通过 float css 属性,确保您指定宽度,如下例所示:

<div class="container">
<div class="top">top</div>
<div class="middle">
   <div class="left">left</div> <div class="right">right</div>
</div>
<div  class="bottom">bottom</div>

你的CSS应该是这样的:

.left{
float:left;
width:50%;
background:green;
}
.right{
float:right;
width:50%;
background:blue;
}
.bottom{
clear:both;
}​ 

见这里http://jsfiddle.net/M3met/1/

于 2012-07-04T16:55:35.000 回答