html - 使用自动固定宽度列时如何让CSS多列布局使用适当的宽度?

标签 html css multiple-columns

有什么方法可以使CSS Multi-column Layout Module自动有合适的宽度?

.collection {
  height: 100%;
  -webkit-column-count: auto;
  -webkit-column-width: 100px;
  -webkit-column-gap: 0px;
}
.collection > div {
  display: inline-block;
  background-color: black;
  width: 100%;
  height: 100px;
}

http://jsfiddle.net/zBsBG/

当使用 12 个元素时,它现在会自动将 .collection 元素的宽度设置为视口(viewport)的宽度。

我希望它具有适当的宽度,具体取决于自动生成的列数。例如,当它是 3 列宽时,它应该大约 300 像素宽(不是视口(viewport)的宽度)。

我错过了什么吗?

编辑:虽然我知道我可以为 .collection 元素指定宽度, 但这违背了专门设置列宽并计数为自动的目的。我希望它是可变宽度的。

这很容易通过 JavaScript 手动解决,但我想尽可能避免这种情况。

最佳答案

问题是您指定了 height: 100%,这意味着 div 元素将尝试填充 .collection 元素垂直第一。通过删除高度属性,列将沿宽度适当平衡:因此:http://jsfiddle.net/QeD77/

编辑:使用 JS 重新制作 fiddle 以平衡宽度: http://jsfiddle.net/tG4P6/4/

关于html - 使用自动固定宽度列时如何让CSS多列布局使用适当的宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17758155/

相关文章:

html - iPhone 上显示的响应式菜单出现问题(z-index?)

html - 停止 <p> 标签换行

jquery - 默认二级排序

C编程: ouput two strings as two columns next to each other

r - 如何交换 R 中两列中的值?

javascript - AngularJS,指令元素为空

javascript - 如何在 Internet Explorer 9、10 中为 Twitter Bootstrap 3 进度条设置动画 :

javascript倒计时,鼠标悬停重置

jQuery 动画字体大小减小 : animate shrinking from all sides

html - 如何去除移动设备上输入(单选、选择和复选框)的蓝色背景?