【发布时间】:2016-12-09 16:23:49
【问题描述】:
我一直在努力解决 CSS 中的以下问题。我有任意数量的项目(跨度或 div),我想以类似蛇的模式将它们包装在容器中。
我的意思是,如果我有 10 个项目,每个项目 20 像素宽,我希望它们在 60 像素宽的容器中显示如下:
0 1 2
5 4 3
6 7 8
9
我曾尝试在 CSS 中使用 flexbox,但我只能让项目显示如下:
0 1 2
3 4 5
6 7 8
9
如果有帮助,我知道各个项目的确切宽度,但我不知道容器的宽度。
任何帮助将不胜感激。
提前谢谢你!
【问题讨论】:
-
你可以使用任何html结构吗?
-
虽然 CSS 大师可能能够为您提供纯 CSS 解决方案,但我想先问问您是否愿意接受 javascript 或 jQuery 解决方案?您可以将三个元素的每个块组合成一行,并使用 CSS 中的
odd和even将行的子元素浮动到相对的两侧。 -
请发布您打算使用的 HTML。
-
我考虑的替代方案是拥有一个 HTML 网格(每行/列对拥有一个唯一的 ID)并使用 javascript 将项目动态分配到正确的位置,但这不如 CSS 优雅解决方案(如果存在)...不过我可能不得不求助于它。
-
老实说,在这种情况下,我认为 JS 解决方案不会比 CSS 解决方案(如果有的话)“不那么优雅”......
标签: css