【发布时间】:2014-09-30 22:37:34
【问题描述】:
编辑
至于为什么我需要这种行为,将我的内容放在一个 div 中意味着所有内容在网页和 html 中都是按时间顺序排列的。这意味着当内容显示在小屏幕上并且列合并为一个时,内容仍然按时间顺序排列。
1 div --> 1 2 divs --> 1
1 | 2 2 1 | 2 3
3 | 4 3 3 | 4 5
5 | 4 5 | 2
5 4
在我的website 上,我有两列内容,每列占宽度的 50%。内容被组织成框,当您单击其标题时,可以切换以隐藏/显示内容。
当右边的一个盒子被最小化时,它下面的盒子会填充创建的空白,留下正确的间距:
但是,当左侧的一个框被最小化时,它与下一个框之间会留下一个间隙,相对于右侧相邻框的大小:
div排列的一些伪代码:
<div class="full_width">
<div class="box"> <-- box 1
<h1>Heading</h1>
<div>Content.</div>
</div>
<div class="box"> <-- box 2
<h1>Heading</h1>
<div>Content.</div>
</div>
<div class="box"> <-- box 3
<h1>Heading</h1>
<div>Content.</div>
</div>
</div>
据我了解,在这种情况下,由于 html 中内容的顺序,框 3 不能位于框 2 的底部上方,有什么办法解决这个问题吗?
我对 javascript 解决方案很满意,因为这只会在启用了 javascript 的页面上出现问题。
注意事项
-您需要 javascript 和一个宽度超过 1000 像素的监视器才能在我的网站上实时查看问题,因为列折叠成低于该宽度的 1,并且隐藏/显示功能由 javascript 提供。
-我可以通过拥有两个不能改变方向的独立内容列来解决这个问题,但这不是我想要的功能。
【问题讨论】:
标签: javascript html css vertical-alignment