css - 动态(流体)间隔的多行元素(如对齐)

标签 css layout

我想实现这个:

enter image description here

这些只是容器内具有流体动态宽度的任何元素。 我想将 N 个元素放在一行中,它们之间有动态间距,所以 我的布局总是连续 4 个,而且响应迅速。

诀窍是每行不使用任何包装元素,只使用带有任何 CSS 的最小 DOM。

Live Playground

最佳答案

您需要使用 % 宽度和边距。

类似这样的内容(取自您的示例):

ul{ list-style:none; }

li{ 
  float: left;
  display:block;
  width:21.7%; 
  height:50px; 
  background:red; 
  margin: 0 4.4% 4.4% 0;
}
li.z{
  margin-right: 0;
}

li:nth-child(2n){ 
  background:blue; 
}

请注意,我为您的最后一个元素添加了一个“z”类,即每 4 个。

HTH.

关于css - 动态(流体)间隔的多行元素(如对齐),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17301161/

相关文章:

html - 检查父 div 是否有带有子类的 div

jquery - 如何过渡居中对齐的动态文本?

java - 当我在 Android 中将事件从 View 传输到按钮时,为什么 requestLayout() 不调用 onLayout()?

forms - FormItems 未与 DataGroup 中的 ItemRenderer 对齐

c# - 如何在控件之间添加动态间距? (附图片)

java - 带标题的 JPanel

html - 如何在 bootstrap 的 3 列中均匀对齐我的内容?

html - 使用 css 伪元素制作垂直边框和元素符号

android - 如何将多个项目放在 ListView 的同一行?

javascript - SVG 相对位置