css - 当 3 个 div 框在 main-div 包装内时清除 float

标签 css html css-float

我的主要 div id #main 包含 3 个 div 类 .left .right.left-top。 left 和 left-top div 框向左浮动,而 right 框向右浮动。下面给出了 Css 和 Html。这里我不知道为什么我的右框向下 float 等于 left-top 框的高度并且放置得像有一些顶部边距一样。我想要这个 right 仅在最顶部的 div。

JSFIDDLE:http://jsfiddle.net/9zTXt/2/

HTML:

<div id = "main">
<div class= "left-top"></div>
<div class = "left"></div>
<div class = "right"></div>    
</div>


CSS:

#main
{position:relative;
width:350px;height:800px;
background:grey; 
margin-top:20px;     
}
#main .left
{float:left;
position:relative;width:200px;height:800px;
background:red;
margin-top:10px;
}
#main .left-top 
{width:200px;height:30px;
background:blue;
}

#main .right
{float:right;position:relative;
width:130px;height:800px;background:green;
margin:10px 0px 0px 20px;   
}

最佳答案

试试这个 http://jsfiddle.net/9zTXt/4/

html

<div id = "main">
    <div>
        <div class= "left-top"></div>
        <div class = "left"></div>
    </div>
    <div class = "right"></div>    
</div>

CSS:

#main .right
{
    float:right;position:relative;
    width:130px;height:800px;background:green;
    margin:0px 0px 0px 20px;   
}

#main > div {
  float: left;
}

说明: 基本上将左侧 float 元素包裹在它们自己的 div 中,这样它们就不会与右侧 float 元素混淆,并从 .right< 中取出 margin-top/ 分区

关于css - 当 3 个 div 框在 main-div 包装内时清除 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15344654/

相关文章:

css - 您可以在@media 查询中重新定义@mixin 吗?

c# - 定位代码在 li 内生成的数据列表项

html - css bootstrap - 使网站在纵向方向上尽可能小,在横向上尽可能小

html - 如何制作一个使用整个左侧(1/4)的div元素?

css - 为什么固定宽度元素不占用 float 元素旁边的空间?

css - 为什么 float css 属性会调整 div 的大小?

javascript - 将 CSS .class 作为参数传递给 javascript 函数

php - 在 wordpress 中创建搜索查询

html - 如何解决背景图像在 CSS 中不显示的问题

css - 当在关键帧中定义高度/宽度时,CSS 动画中的旋转中断