请教一个分散均匀布局的问题

2022-12-08 18:09:09 +08:00
 qinxs

背景:之前写的一款书签管理扩展,几乎全部功能都已完成。
现在还存在一个跟预期不符的遗留问题,所以在此请教~

具体问题

一个目录下有许多书签,我想让他们先竖向、再横向均匀分布。 比如 6 个书签,按 5 行显示:

期待的效果
一 二 三 四 五(行)
① ③ ④ ⑤ ⑥

现在的效果
一 二 三 四 五(行)
① ③ ⑤
② ④ ⑥

后面就空起了两行...

问题说明

  1. 目前书签内容布局采用的是 flex 布局( flex-direction: column ), 然后通过改变 container 的高度控制列数
  2. 支持书签的删除、新增操作,所以不考虑在 3 、4 、5 、6 后填补空白单元
  3. 支持快捷键(比如:上下左右),改的时候要考虑这个

Demo: https://plnkr.co/edit/kkIAIf6B0uylynBl?preview

不知道有没有代价不大的实现方法?

862 次点击
所在节点    前端开发
5 条回复
edward1987
2022-12-08 18:24:06 +08:00
flex-direction: column;
->
flex-direction: row;
不就符合你的需求了吗...
qinxs
2022-12-08 19:58:35 +08:00
@edward1987

显示需要先竖向、再横向的
qinxs
2022-12-10 11:53:54 +08:00
具体问题里,应该是列(我搞混了,不好意思,但好像不能修改问题)
qinxs
2022-12-18 15:41:52 +08:00
感谢前面朋友的回答,此问题现已解决。

解决方法:
通过 css 选择器 an+b 给选中元素增加一个 `margin-bottom: 1px;`
而 a,b 通过总条数和列数计算可得
kwrush
2023-02-03 01:49:01 +08:00
不能用 flex-grow 吗?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/901150

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX