javascript - CSS - 将所有子元素的总宽度设置为其父元素

标签 javascript html css vuejs2 vuetify.js

我正在尝试创建一个包含矩形的正方形,每个矩形都包含一个单词。每个子矩形的总宽度应该等于父矩形,但问题是我不知道每个单词的顺序或长度,使用搜索过滤器我可以动态更新列表客户端,因此我可以不要为每个包含的矩形静态分配宽度/填充/边距。为了说明我的问题,这是我当前的代码,以及显示我当前拥有的内容的屏幕截图。

<div class="index">
  <!-- heading, filter input and other stuff here -->
  <div class="books">
    <div class="book">Lorem</div>
    <div class="book">Ipsum</div>
    <div class="book">is</div>
    <div class="book">simply</div>
    <div class="book">dummy</div>
    <!-- rest of the book divs here -->
  </div>
</div>

enter image description here

我尝试在图像编辑器中四处移动矩形这个词来展示我想要实现的目标,但结果变得一团糟。基本上,我想在它们的父方 block 内“对齐”矩形,以便矩形与父方的所有边齐平。我更喜欢在边距上使用 width/padding,因为我想在所有边距周围保持 1px 边距。 IE。单词的灰色背景宽度应该增加。如果您需要查看我正在努力实现的目标的图片,请告诉我,我会尝试再次移动它们。

另请注意,我使用的是 Vue.js 和 Vuetify(矩形一词由 v-for 生成),因此如果您的回答包括 Vue/Vuetify 特定解决方案,我会不仅仅是快乐。但为了 future 的读者,我也很乐意接受普通的 HTML/CSS/JS 解决方案。

请同时给我们这个效果的名称(如果有的话)。

最佳答案

我在 https://jsfiddle.net/saksham_malhotra/52nz7rpf/ 使用 flexbox 创建了一个 fiddle

这有助于您将书名展开以覆盖每一行,直到最后。

after 元素用于在最后留下空白,而不是让最后几个框覆盖整行。

关于javascript - CSS - 将所有子元素的总宽度设置为其父元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56303022/

相关文章:

html - 如何向从小屏幕设备访问网站的平板电脑用户显示滚动条?

css - 有一个固定的 <ImageBackground> 在我滚动时不会自行移动

javascript - 我应该如何使用 Jasmine 在 JavaScript 中对单例进行单元测试?

javascript - JavaScript 中如果没有 .then(),promise 可能会被垃圾回收过早吗?

javascript - 如何使用 JavaScript DOM 在 html 中添加 svg?

html - 相对定位的元素不占用其子元素的高度

javascript - 在 React 中正确渲染 HTML 标签

html - 我想使用 float 并排放置两列,但其中一列未正确放置...为什么?

javascript - Vue - 通过外部点击切换状态

javascript - 来自 anchor 标记的多个链接问题 - php