当前位置: 首页 > 面试题库 >

如何使display:flex容器及其包装的内容物水平展开?

卢承弼
2023-03-14
问题内容

使用CSS时flexbox,三个主要浏览器在某些区域的行为似乎完全不同。

在这种情况下,我试图创建一个图像网格:

<div class="container">
     <div class="photo"></div>
     <div class="photo"></div>
     <div class="photo"></div>
     <div class="photo"></div>
     <div class="photo"></div>
     <div class="photo"></div>
</div>


.container {
    display:inline-flex;
    flex-flow : column wrap;
    align-content : flex-start;
    height : 100%;
}

在此示例中,我需要一个容器,该容器本身包含几个div设置为从上到下流动并在到达底部时进行包装的元素。最终为我提供了照片列。

但是我需要容器水平扩展以容纳包装好的元素:

行为如下:

  • IE 11- 正确,容器水平拉伸以包裹包裹元素的每一列
  • Firefox- 容器仅包装元素的第一列,其余元素溢出。
  • 镀铬 -容器始终会拉伸以填充其父容器的宽度,无论大小如何。

在这种情况下,我想在其他两种浏览器中实现IE11的行为。因此,我的问题是,如何使flexbox容器水平扩展以匹配其column wrap内容。

提前致谢。


问题答案:

似乎仅靠CSS无法解决此问题,因此我向您提出了一种JQuery解决方案

容器宽度=最后一个子项的位置-容器的位置+最后一个子项的宽度(包括边距)

代码:

$(document).ready(function() {
 $('.container').each(function( index ) {
     var lastChild = $(this).children().last();
     var newWidth = lastChild.position().left - $(this).position().left + lastChild.outerWidth(true);
     $(this).width(newWidth);
    })
});


 类似资料:
  • 问题内容: 我有以下PL SQL函数,该函数返回ref游标,但是我正在使用的应用程序不支持ref游标。我怎样才能使此代码返回引用游标以外的其他内容 输出: 问题答案: 您可以使用管道函数一次以一个SQL引擎可以理解的方式返回结果集一个记录。 使用此软件包,您可以选择您的ref游标:

  • 问题内容: 我有一个部门想要显示图像,然后单击以在灯箱中打开它们。我将它们向左浮动并在线显示它们。设置overflow- x进行滚动,但是一旦行空间不足,它仍然会将图像放在下面。我想让它们内联,并在需要时显示水平滚动。 注意: 我无法更改内部图像的结构。它必须是锚点内的img。我的灯箱就这样要求它。 HTML: CSS: 我知道这是非常基本的,但是我做不到。不知道怎么了 问题答案: HTML中可能

  • 问题内容: 我知道如何使用rpm列出软件包的内容()。但是,这需要知道.rpm文件在文件系统上的位置。一个更优雅的解决方案是使用包管理器,在我的例子中是YUM。YUM如何用于实现这一目标? 问题答案: 有一个名为YUM 的软件包,它包含一个可以完成此任务的工具。 合并为一个示例: 在至少一个RH v4.8.0,yum v3.2.29和repoquery v0.0.11的RH系统上,什么都不打印。

  • 我已经实现了从pdf中删除图层的功能,但问题是,我在图层上绘制的内容无法删除。下面是我用来删除图层的代码:

  • 问题内容: 我有以下CSS的div.scroll_fixed 当div到达页面顶部时,我正在使用以下jQuery代码设置.fixed类。 这对于垂直滚动固定非常有用。但是在浏览器窗口较小的情况下,水平滚动会导致与此固定div右侧的内容发生冲突。 我希望div随内容水平滚动。 谁能指出我正确的方向。仍然用JS / JQuery弄湿我的脚。 我基本上希望它像本示例中的第二个框一样工作。 问题答案: 该

  • 问题内容: 我有这些嵌套的div,我需要主容器扩展(在高度上)以容纳内部的DIV CSS是这样的: 我的问题是无法拉伸以容纳所有内部div,结果它们一直在后台运行。 考虑到以上情况,如何解决此问题? 问题答案: 您需要在div关闭之前强制输入a 。我可能会将其移入div并将CSS设置为: 更新: 这个问题仍然有相当多的流量,所以我想使用CSS3中称为“弹性框”或“弹性框”的新布局模式,以一种现代的