javascript - 具有等间距 DIV 的流体宽度 + 最后一行左对齐

标签 javascript jquery css html justify

我在流体布局和文本对齐中有固定宽度的框:用这个发布的解决方案证明它们:

Fluid width with equally spaced DIVs

但是因为我在响应式布局中有更多行。

这当然会发生:

------    ------    ------    ------    
|    |    |    |    |    |    |    |    
|    |    |    |    |    |    |    | 
------    ------    ------    ------    
------    ------    ------    ------    
|    |    |    |    |    |    |    |    
|    |    |    |    |    |    |    | 
------    ------    ------    ------    
------          ------        ------    
|    |          |    |        |    |   
|    |          |    |        |    | 
------          ------        ------

但我喜欢这样:

------    ------    ------    ------    
|    |    |    |    |    |    |    |    
|    |    |    |    |    |    |    | 
------    ------    ------    ------    
------    ------    ------    ------    
|    |    |    |    |    |    |    |    
|    |    |    |    |    |    |    | 
------    ------    ------    ------    
------    ------    ------   
|    |    |    |    |    |  
|    |    |    |    |    |
------    ------    ------  

当然证明它的工作是正确的,但是有没有不使用 javascript 来解决这个问题的解决方案?

我认为 text-align-last: left 可以工作,但事实并非如此,而且还不是正式的天气。

可能解决方案的想法:

我想到了一个可能的 javascript 解决方案,但我需要你的帮助。

这是我对可能的解决方案的想法:

为了让最后一行左对齐,我们实际上需要用不可见的框填充那些缺失的空间。我们可以很容易地手动完成,但 div 的数量是用户生成的并且总是不同的。

所以 weed 需要知道缺少的盒子数量并将它们附加到我们已有的盒子上,以使其工作:

所以这是我的(幼稚的)srcipting 想法:

1. Count all divs
2. Divide them with 4 (cause we have 4 in a row)
3. If the SolutionA has no decimal, nothing will happen cause all is good
4. If the SolutionA has a decimal, remove it
5. SolutionA + 1 = SolutionB
6. SolutionB x 4 (cause we have 4 each in a row) = SolutionC
7. SolutionC - SolutionA = Number of divs we need to add.

我不知道是否有办法查明一行中已经有多少项并将其传递给 javascript。这将是一个很好的原因,那么公式将适用于响应式布局,而无需在每次随浏览器宽度变化时调整行号。

这是个好主意吗?

我希望有人愿意这样做。

这是一个可以使用的 fiddle : http://jsfiddle.net/L2mPf/

谢谢。

请参阅我的答案。

最佳答案

好的,这是使用 css 的该死的简单解决方案:

简单地添加一行中的多少个 div(在本例中为 4 个)并给它们 1px 的高度。

没有 javascript,没有什么可看的,一切都像魅力一样。

这是新的 fiddle :http://jsfiddle.net/L2mPf/1/

感谢@GGG 让我重新关注 css 和这个解决方案。

关于javascript - 具有等间距 DIV 的流体宽度 + 最后一行左对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9123232/

相关文章:

javascript - JQuery 附加时忽略样式/位置

javascript - JSON 的自动完成显示不正确 - 我得到值但显示为空白

css - 用本地时间更改背景

javascript - Magnific-Popup 关闭回调不执行

javascript - Bing map pin 的拖尾已成功调用,但 Bing map 移动事件仍在继续

javascript - 二进制 XHR 结果到文件 blob - Jquery

javascript - 将值从表单字段复制到另一个时如何用下划线替换空格

html css 设计好的做法?

javascript - 将变量传递给高阶函数

javascript - 使用 querySelectorAll 检索直接子项