根据列表中的图像数量按比例调整动态图像列表的大小

Proportionally resize dynamic LIST of images based on amount of images in list

我有几个动态添加到另一个容器的容器(我们称这些项目为加载解决方案)。在每个 Loading Solution 中,我想添加与 Loading Solution 在其配置中一样多的卡车图标。

因此,例如:

现在的问题是,最终所有这些卡车图标都不再适合容器了。

如何在动态生成图像的同时自动调整每个 Loading Solution 容器内图像的大小?

这是现在的样子:

但这就是我想要实现的:

编辑: 这是我的卡车图标 Vue 模板

<div class="trucks">
    <div class="truck-img d-inline-block mr-4" v-for="i in item.loads" :key="`load-${i}`">
        <img src="@/__app_assets/img/truck.png" alt="truck" />
    </div>
</div>

纯HTML和CSS解决方案:

.container {
  background: gray;
  width: 300px;
  height: 200px;
  display: flex;
  align-items: center;
}

.inside {
  display: flex;
  flex-flow: wrap;
}

.item {
  margin: 4px;
  flex: 1 0 16%;
}

.item:nth-child(n + 6){
  max-width: 52px;
}

img {
  max-width: 100%;
}
<div class="container">
  <div class="inside">
    <div class="item">
      <img src="https://i.imgur.com/Jf1Pzoo.jpg"/>
    </div>
    <div class="item">
      <img src="https://i.imgur.com/Jf1Pzoo.jpg"/>
    </div>
    <div class="item">
      <img src="https://i.imgur.com/Jf1Pzoo.jpg"/>
    </div>
  </div>
</div>

如果要更改每行的最大列数(实际为 5),请调整项目 class 的 flex-basis 百分比,max-width nth-child 及其参数 (n + (cols + 1)).