css - 两列 Flexbox 布局中的 "Balanced Paragraphs"?

标签 css flexbox grid

我有一些看起来像这样的代码

<div class="passage-container">
    <p>Paragraph 1...</p>
    <p>Paragraph 2...</p>
    <p>Paragraph 3...</p>
    <p>Paragraph 4...</p>
    <p>Paragraph 5...</p>
    <p>Paragraph 6...</p>
</div>

如果所有段落文本的长度都相同,我可以在第 3 段之后分栏,让第 4 段开始新栏。但更重要的是一些段落会比其他段落长/短,所以有可能,例如,我希望第 1 段和第 2 段位于第一列,然后第 3-6 段位于第二列。

有没有一种方法仅使用 CSS 来实现此功能,其中 flexbox 将根据段落中的内容量调整一列与另一列中显示的段落,从而使列保持平衡?

谢谢

最佳答案

试试 CSS 列

.passage-container {
    columns: 2;
}

它们工作得很好,但有时会令人沮丧,但中断边/之前/之后的规则可以帮助您处理格式。更多详情请参阅:https://developer.mozilla.org/en-US/docs/Web/CSS/columns

关于css - 两列 Flexbox 布局中的 "Balanced Paragraphs"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51424114/

相关文章:

binding - 如何绑定(bind)到 ItemsPanel 中的网格?

python - 如何用Python制作动态网格

java - 如何增加Tab中JTextField的宽度?

javascript - css 或 javascript 添加一个 :hover style to complete line?

twitter-bootstrap - Bootstrap flex 列在 Firefox 中无法正常工作

css - 从另一个文件引用 base64 字符串

html - 响应式菜单 - 使用 Flex Box 根据屏幕宽度显示汉堡包或单元格

html - 具有相同高度的CSS Flex-Box

css - 在 MyEclipse 中保存时自动运行 maven,无需提交元素文件

html - 一个普通的垂直滚动条和两个水平滚动条的两列布局