我在流畅的布局和文本对齐中有固定宽度的框:用这个发布的解决方案证明它们的合理性:
但是因为我在响应式布局中有几行。
这当然会发生:
------ ------ ------ ------
| | | | | | | |
| | | | | | | |
------ ------ ------ ------
------ ------ ------ ------
| | | | | | | |
| | | | | | | |
------ ------ ------ ------
------ ------ ------
| | | | | |
| | | | | |
------ ------ ------
但我喜欢这样:
------ ------ ------ ------
| | | | | | | |
| | | | | | | |
------ ------ ------ ------
------ ------ ------ ------
| | | | | | | |
| | | | | | | |
------ ------ ------ ------
------ ------ ------
| | | | | |
| | | | | |
------ ------ ------
当然证明它的工作是合理的,但是在不使用 javascript 的情况下是否有解决方案?
我认为 text-align-last: left 可以工作,但它没有,而且还不是官方的。
可能的解决方案的想法:
我想出了一个可能的 javascript 解决方案,但我需要你的帮助。
这是我对可能解决方案的想法:
为了让最后一行左对齐,我们实际上需要用不可见的框填充那些缺失的空间。我们可以很容易地手动完成,但 div 的数量是用户生成的,并且总是不同的。
所以杂草需要知道丢失的盒子的数量并将它们附加到我们已经拥有的盒子上,以使其工作:
所以这是我的(婴儿)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。这将是一个很好的原因,然后公式将适用于响应式布局,而无需在每次随浏览器宽度更改时调整行号。
这是一个好主意吗?
我希望有人愿意这样做。
这是一个可以使用的小提琴:http: //jsfiddle.net/L2mPf/
谢谢你。
请参阅我的答案。