【问题标题】:Automatically increase number of columns as width increases随着宽度的增加自动增加列数
【发布时间】:2013-11-12 00:16:01
【问题描述】:

是否有人知道随着屏幕宽度的增加/减少而在不断变化的列数中显示输入的好方法?比如说,我有 15 个人。如果你的屏幕是 1200 像素宽,我想给你 15 个人,分成 3 列,每列 5 人。如果您的屏幕宽度在 800 到 1200 像素之间,那么我想给您 7 列和 8 列的 2 列,以及任何小于 800 像素的列,我只会给您一个包含 15 个人的列表。

我正在寻找 jQuery 或 angularJS 解决方案。

【问题讨论】:

  • 每个“人”的宽度和高度都是一样的,为什么不简单地浮动它们。

标签: jquery css angularjs


【解决方案1】:

可以将 CSS3 columns 属性与媒体查询结合使用来更改它们

【讨论】:

【解决方案2】:

我一般不会用 angularjs 或 javascript 来做这件事,因为监听 resize-event 的成本很高。为什么不使用 css-media 查询?

@media(min-width: 1200px){
   td:nth-child(13+n){
     display: none;
   } 
   tr:nth-child(4+n){
     display: none;
   } 
}
@media(min-width: 800ox){
   td:nth-child(8+n){
     display: none;
   } 
   tr:nth-child(3+n){
     display: none;
   } 
}

如果你真的想,你可以使用这样的东西: http://jsfiddle.net/GpLHZ/

虽然链接到处理数据的特定控制器的指令或表的指令可能是更好的方法。

【讨论】:

    猜你喜欢
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-27
    • 2017-11-20
    • 1970-01-01
    • 2011-05-29
    • 1970-01-01
    相关资源
    最近更新 更多