包装时是否可以更改项目的顺序?

维特拉

我正在尝试创建一个网站的一部分,包括3个部分(我们称其为A,B,C),其中A和B彼此相邻(对齐以接触容器的相对侧),而在它们下面是C ,但是当A和B在容器中彼此不匹配时,B会包裹在C下方,而不是在A和C之间。

A,B和C都具有伸缩组件,并且可以通过其他元素来调整容器的大小,因此它们的大小都是未知的。这意味着使用@media是不可能的。

预期结果:
当A和B彼此适合时:当它们不适合时:用flexbox或grid可以实现吗?据我所知:
当A和B彼此适合时

当他们不这样做



<!DOCTYPE html>
<html>
<head>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>flexbox black magic</title>
</head>
<body>
    <div style="width:50%; border:4px solid blue; margin:8px; display: flex; justify-content: space-between; flex-wrap: wrap;">
        <div style="width: 100px; height: 60px; border: 4px solid red; margin:8px;">a</div>
        <div style="width: 70px; height: 30px; border: 4px solid green; margin:8px;">b</div>
        <div style="width: 100%">
            <div style="width: 100%; max-width: 240px; height: 100px; border: 4px solid orange; margin:8px;">c</div>
        </div>
    </div>
</body>
</html>

但这不仅会以错误的顺序包装元素,还会使C伸出容器。

陪同Afif

这是一个使用float的想法,是的float。调整蓝色容器的大小,然后查看结果:

.box {
  width: 50%;
  border: 4px solid blue;
  margin: 8px;
  text-align: justify;
  font-size:0; /* this will make sure the pseudo element won't have any size */
  overflow: auto;
  resize: horizontal;
}
.box > * {
  font-size:initial; /* we reset the font for child element */
  margin:8px;
  box-sizing:border-box;
}
/* the below is used with text-align:justify to have the correct alignment on wrap */
.box::before {
  content:"";
  display:inline-block;
}
.box::after {
  content:"";
  display:inline-block;
  width:100%;
}
/**/
.a {
  max-width: 100px;
  width: calc(100% - 16px);
  height: 60px;
  float:left; /* we float a */
}

.b {
  width: 70px;
  height: 30px;
  display: inline-block;
}

.c {
  height: 100px;
  width: calc(100% - 16px);
  max-width: 240px;
  float:left; /* and we float c */
  clear:left; /* don't forget this to make "c" always below "a" */
}
<div class="box">
  <div class="a" style="border: 4px solid red;">a</div>
  <div class="c" style="border: 4px solid orange;">c</div>
  <div class="b" style="border: 4px solid green;">b</div>
</div>

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

包装时是否可以更改物品的顺序?

来自分类Dev

是否可以更改带有项目的对象中父母/孩子的顺序?

来自分类Dev

打印时阵列项目的顺序更改

来自分类Dev

是否可以更改Google Cloud Platform项目的区域?

来自分类Dev

从styles.xml切换应用程序主题时,是否可以更改项目的可见性?

来自分类Dev

更改可见项目的顺序

来自分类Dev

包装时如何更改弹性顺序

来自分类Dev

是否可以更改全局顺序?

来自分类Dev

伸缩框宽度更改时更改伸缩项目的顺序

来自分类Dev

是否可以使用WizardNewProjectCreationPage更改新项目的创建级别?

来自分类Dev

是否可以在下拉列表中更改所选项目的文本?

来自分类Dev

是否可以从外部管理项目的Dockerfile

来自分类Dev

使用ReactJS更改列表中项目的顺序

来自分类Dev

使用CoreData和SwiftUI更改To Many项目的顺序

来自分类Dev

如何更改弹性项目的文本选择顺序?

来自分类Dev

如何在电话屏幕上更改网站项目的顺序

来自分类Dev

使用笔号时如何反转图例项目的顺序?

来自分类Dev

是否可以更改.NET Windows应用程序窗体中所有禁用项目的默认颜色?

来自分类Dev

是否可以完全消除对Java项目的混淆?

来自分类Dev

侧边栏项目的顺序

来自分类Dev

用户单击时如何更改项目的背景色

来自分类Dev

滚动时Android Listview项目的属性更改

来自分类Dev

更改屏幕时其项目的方向不同的android应用

来自分类Dev

在构建时更改iOS项目的团队设置

来自分类Dev

离子列表在按下时更改项目的颜色

来自分类Dev

单击按钮时更改特定项目的值

来自分类Dev

在 Android Studio 中更改项目的“buildToolsVersion”时出错

来自分类Dev

是否可以仅在特定浏览器宽度时更改 div 的顺序(不仅仅是美观)?

来自分类Dev

Tkinter:是否可以更改已放置框架的堆叠顺序?

Related 相关文章

  1. 1

    包装时是否可以更改物品的顺序?

  2. 2

    是否可以更改带有项目的对象中父母/孩子的顺序?

  3. 3

    打印时阵列项目的顺序更改

  4. 4

    是否可以更改Google Cloud Platform项目的区域?

  5. 5

    从styles.xml切换应用程序主题时,是否可以更改项目的可见性?

  6. 6

    更改可见项目的顺序

  7. 7

    包装时如何更改弹性顺序

  8. 8

    是否可以更改全局顺序?

  9. 9

    伸缩框宽度更改时更改伸缩项目的顺序

  10. 10

    是否可以使用WizardNewProjectCreationPage更改新项目的创建级别?

  11. 11

    是否可以在下拉列表中更改所选项目的文本?

  12. 12

    是否可以从外部管理项目的Dockerfile

  13. 13

    使用ReactJS更改列表中项目的顺序

  14. 14

    使用CoreData和SwiftUI更改To Many项目的顺序

  15. 15

    如何更改弹性项目的文本选择顺序?

  16. 16

    如何在电话屏幕上更改网站项目的顺序

  17. 17

    使用笔号时如何反转图例项目的顺序?

  18. 18

    是否可以更改.NET Windows应用程序窗体中所有禁用项目的默认颜色?

  19. 19

    是否可以完全消除对Java项目的混淆?

  20. 20

    侧边栏项目的顺序

  21. 21

    用户单击时如何更改项目的背景色

  22. 22

    滚动时Android Listview项目的属性更改

  23. 23

    更改屏幕时其项目的方向不同的android应用

  24. 24

    在构建时更改iOS项目的团队设置

  25. 25

    离子列表在按下时更改项目的颜色

  26. 26

    单击按钮时更改特定项目的值

  27. 27

    在 Android Studio 中更改项目的“buildToolsVersion”时出错

  28. 28

    是否可以仅在特定浏览器宽度时更改 div 的顺序(不仅仅是美观)?

  29. 29

    Tkinter:是否可以更改已放置框架的堆叠顺序?

热门标签

归档