为什么在第三行之后,float属性无法正常工作?

托波利略

经过几行后,css float属性有一个奇怪的行为,我不知道其原因。看图片


考虑到我不能在行之间添加带有“ clear”属性的div,因为html将动态生成(php循环)。

我认为为了做到这一点,我应该在php中创建一个函数,该函数确定何时在行之间插入一个清晰的div,因为有时每2张图片有时是3张图片。

但是我更喜欢CSS解决方案。

这是完整的代码:

.row {
    width: 600px;
    text-align: center;
    margin: 0 auto;
}

.boxes{
    box-sizing: border-box;
    position: relative;
    min-height: 1px;
    height: auto;
    float: left;
    padding-left: 10px;
    padding-bottom: 10px;   
}

.box1 {
    width: 33.33333333333333%;
}

.box2 {
    width: 66.66666666666666%;
}

.box-inner {
    background-color: grey;
    width: 100%;
    height: 100%;
}

.img-responsive {
    display: block;
    max-width: 100%;
    height: auto;
}
<html>

  <body>
    <div class="row">
      <div class="box1 boxes">
        <div class="box-inner">
          <img class="img-responsive" src="https://picsum.photos/390/244?random=1" alt="">
        </div>
      </div>
      <div class="box1 boxes">
        <div class="box-inner">
          <img class="img-responsive" src="https://picsum.photos/390/244?random=1" alt="">
        </div>
      </div>
      <div class="box1 boxes">
        <div class="box-inner">
          <img class="img-responsive" src="https://picsum.photos/390/244?random=1" alt="">
        </div>
      </div>
      <div class="box1 boxes">
        <div class="box-inner">
          <img class="img-responsive" src="https://picsum.photos/390/244?random=1" alt="">
        </div>
      </div>
      <div class="box2 boxes">
        <div class="box-inner">
          <img class="img-responsive" src="https://picsum.photos/770/238?random=1" alt="">
        </div>
      </div>
      <div class="box2 boxes">
        <div class="box-inner">
          <img class="img-responsive" src="https://picsum.photos/770/238?random=1" alt="">
        </div>
      </div>
      <div class="box1 boxes">
        <div class="box-inner">
          <img class="img-responsive" src="https://picsum.photos/390/244?random=1" alt="">
        </div>
      </div>
      <div class="box1 boxes">
        <div class="box-inner">
          <img class="img-responsive" src="https://picsum.photos/390/244?random=1" alt="">
        </div>
      </div>
      <div class="box1 boxes">
        <div class="box-inner">
          <img class="img-responsive" src="https://picsum.photos/390/244?random=1" alt="">
        </div>
      </div>
      <div class="box1 boxes">
        <div class="box-inner">
          <img class="img-responsive" src="https://picsum.photos/390/244?random=1" alt="">
        </div>
      </div>
    </div>
  </body>

</html>

j08691

在您的示例中,您的图像比之前的图像稍短。这导致clear通常会修复的下一行上的间隙如果您每行有相同数量的元素,那么nth-child可以使用clear这样的东西,但是由于您说每行的元素数量可能会改变,所以这行不通。一个简单的解决方法是在.box-inner班级上设置最小高度

.row {
  width: 600px;
  text-align: center;
  margin: 0 auto;
}

.boxes {
  box-sizing: border-box;
  position: relative;
  min-height: 1px;
  height: auto;
  float: left;
  padding-left: 10px;
  padding-bottom: 10px;
}

.box1 {
  width: 33.33333333333333%;
}

.box2 {
  width: 66.66666666666666%;
}

.box-inner {
  background-color: grey;
  width: 100%;
  height: 100%;
  min-height: 122px;
}

.img-responsive {
  display: block;
  max-width: 100%;
  height: auto;
}
<div class="row">
  <div class="box1 boxes">
    <div class="box-inner">
      <img class="img-responsive" src="https://picsum.photos/390/244?random=1" alt="">
    </div>
  </div>
  <div class="box1 boxes">
    <div class="box-inner">
      <img class="img-responsive" src="https://picsum.photos/390/244?random=1" alt="">
    </div>
  </div>
  <div class="box1 boxes">
    <div class="box-inner">
      <img class="img-responsive" src="https://picsum.photos/390/244?random=1" alt="">
    </div>
  </div>
  <div class="box1 boxes">
    <div class="box-inner">
      <img class="img-responsive" src="https://picsum.photos/390/244?random=1" alt="">
    </div>
  </div>
  <div class="box2 boxes">
    <div class="box-inner">
      <img class="img-responsive" src="https://picsum.photos/770/238?random=1" alt="">
    </div>
  </div>
  <div class="box2 boxes">
    <div class="box-inner">
      <img class="img-responsive" src="https://picsum.photos/770/238?random=1" alt="">
    </div>
  </div>
  <div class="box1 boxes">
    <div class="box-inner">
      <img class="img-responsive" src="https://picsum.photos/390/244?random=1" alt="">
    </div>
  </div>
  <div class="box1 boxes">
    <div class="box-inner">
      <img class="img-responsive" src="https://picsum.photos/390/244?random=1" alt="">
    </div>
  </div>
  <div class="box1 boxes">
    <div class="box-inner">
      <img class="img-responsive" src="https://picsum.photos/390/244?random=1" alt="">
    </div>
  </div>
  <div class="box1 boxes">
    <div class="box-inner">
      <img class="img-responsive" src="https://picsum.photos/390/244?random=1" alt="">
    </div>
  </div>
</div>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么在第三行中使用此“ _”?Python2.7

来自分类Dev

为什么我选择了另一张纸后它在第三行停了下来

来自分类Dev

如何删除多个文件中第三行之后的文本

来自分类Dev

如何检测某些行之前的第三行

来自分类Dev

使换行自动在新列的第三行开始

来自分类Dev

第三行的总和并相应地划分行

来自分类Dev

从文本文件的第三行读取

来自分类Dev

如何在第三行添加列的总和

来自分类Dev

为什么这个 C++ 程序适用于第一行输入而不适用于第二行或第三行?

来自分类Dev

在Pandas中,如何找到一列中每个键的第三行,并添加包含第三行信息的新列?

来自分类Dev

使用第三行内容(第三行内)批量更新 .txt 文件名

来自分类Dev

通过servlet在oracle中获取表的第二行,第三行... 200行

来自分类Dev

在第二行中查找特定值,并从第三行中显示值

来自分类Dev

第二行和第三行应为单行

来自分类Dev

mysql彼此相减2行,并在第三行中显示

来自分类Dev

DictReader字段名称在第三行而不是第一行

来自分类Dev

在第二行中查找特定值,并从第三行中显示值

来自分类Dev

连续复制两行,并使用awk跳过第三行

来自分类Dev

仅从CSV文件的第二行和第三行删除多余的逗号

来自分类Dev

如果删除了第三行,Excel VBA将从两行清除内容

来自分类Dev

从文件中获取第三行作为字符串(不带新行)

来自分类Dev

使用SQL获取前两行作为第三行的计算

来自分类Dev

循环跳过正在读取的文本文件的第一行,为第二行工作,但也不读取第三行

来自分类Dev

在第一行空白和第三行空白之间选择单元格,然后粘贴到另一张工作表中

来自分类Dev

DataFrame每隔第三行取一次并向前填充

来自分类Dev

减少第三行的UIButton标签字体大小

来自分类Dev

如何将公式向下复制到第三行?

来自分类Dev

rbind RStudio将第三行名称添加到现有矩阵

来自分类Dev

如何基于第三行中存在的值创建百分比列?

Related 相关文章

  1. 1

    为什么在第三行中使用此“ _”?Python2.7

  2. 2

    为什么我选择了另一张纸后它在第三行停了下来

  3. 3

    如何删除多个文件中第三行之后的文本

  4. 4

    如何检测某些行之前的第三行

  5. 5

    使换行自动在新列的第三行开始

  6. 6

    第三行的总和并相应地划分行

  7. 7

    从文本文件的第三行读取

  8. 8

    如何在第三行添加列的总和

  9. 9

    为什么这个 C++ 程序适用于第一行输入而不适用于第二行或第三行?

  10. 10

    在Pandas中,如何找到一列中每个键的第三行,并添加包含第三行信息的新列?

  11. 11

    使用第三行内容(第三行内)批量更新 .txt 文件名

  12. 12

    通过servlet在oracle中获取表的第二行,第三行... 200行

  13. 13

    在第二行中查找特定值,并从第三行中显示值

  14. 14

    第二行和第三行应为单行

  15. 15

    mysql彼此相减2行,并在第三行中显示

  16. 16

    DictReader字段名称在第三行而不是第一行

  17. 17

    在第二行中查找特定值,并从第三行中显示值

  18. 18

    连续复制两行,并使用awk跳过第三行

  19. 19

    仅从CSV文件的第二行和第三行删除多余的逗号

  20. 20

    如果删除了第三行,Excel VBA将从两行清除内容

  21. 21

    从文件中获取第三行作为字符串(不带新行)

  22. 22

    使用SQL获取前两行作为第三行的计算

  23. 23

    循环跳过正在读取的文本文件的第一行,为第二行工作,但也不读取第三行

  24. 24

    在第一行空白和第三行空白之间选择单元格,然后粘贴到另一张工作表中

  25. 25

    DataFrame每隔第三行取一次并向前填充

  26. 26

    减少第三行的UIButton标签字体大小

  27. 27

    如何将公式向下复制到第三行?

  28. 28

    rbind RStudio将第三行名称添加到现有矩阵

  29. 29

    如何基于第三行中存在的值创建百分比列?

热门标签

归档