html - 如何向左或向右浮动两次?

标签 html css

基本上,我想在 div 的最左边区域放置两个不同的元素,在 div 的最右边区域放置两个不同的元素。

但是,如果我使用 float:left 和 float:right 两次,我会得到以下结果:

   ELEMENT                                   ELEMENT

          ELEMENT                     ELEMENT 

而不是

   ELEMENT                                    ELEMENT

   ELEMENT                                    ELEMENT

这是因为,当我第二次 float 时,css 会 float 剩余的剩余空间。

我该如何修复这个错误?

最佳答案

您可以将 clear:both;float:left; 属性一起使用。

尝试 Jsbin 演示

.left {
   float:left;
   width:40%;
   height:240px;
   border:1px solid red;
}

.right {
   float:right;
   width:40%;
   border:1px solid red;
   height:240px;
} 

.elem1 {
   float:left;
   margin-bottom:20px;
}

.elem2 {
   float:left;
   clear:both;
}

.elem3 {
   float:left;
   margin-bottom:20px;
}

.elem4 {
   float:left;
   clear:both;
}
<div class="left">
    <div class="elem1">element 1</div>
    <div class="elem2">element 2</div>
 </div>
 <div class="right">
    <div class="elem3">element3</div>
    <div class="elem4">element4</div>
</div>

关于html - 如何向左或向右浮动两次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14078610/

相关文章:

javascript - Pagespeed 洞察报告分析

css - 让跨度填充剩余宽度?

html - 居中没有宽度的下拉菜单

html - 用另一个类覆盖 CSS 类中的第一个子类

html - 样式化多个 :select dropdowns to display inline

html - css 元素的定位不是我期望的位置

javascript - getViewportHeight() 导致只有一 block 视口(viewport)

python - Bootstrap 链接不正确

css - 为什么透明 DIV 标签中的文本颜色会发生变化?

html - 使用Safari时空白区域覆盖网页