CSS 有一个 div 位于左 div 的右下方。 HTML 中的 div 是相反的
描述有点令人困惑,但我有两个 div。一个位于页面左侧,一个通过浮动位于页面右侧。右边是 HTML 中的第一个,左边是第二个。基本上,我希望左侧 div 位于顶部,右侧 div 位于其下方。如果 HTML 上的 Left 和 Right 是有序的,那么就像删除浮动一样简单。然而,由于情况并非如此,我需要一些帮助。这是我设置的jsfiddle: http://jsfiddle.net/7bTjj/
The description is kind of confusing, but I have two divs. One which sits on the left on the page, one which sits on the right via floats. The one on the right is first in the HTML, the one on the left is second. Basically, i want to have it so the left div sits on top, and the right div sits below it. If Left and Right were in order on the HTML, it would be as simple as removing the floats. However, since this is not the case, i need a bit of a hand. Here's a jsfiddle i have setup: http://jsfiddle.net/7bTjj/
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在过去,您必须使用绝对定位。现在,您可以使用为管理布局而创建的 CSS3 属性来解决此问题。
使用
display:box
和box-ordinal-group
属性以您喜欢的任何顺序显示.container
的内容,而无需使用浮点数all:(-webkit
供应商前缀只是为了简单起见)由于您的目标是移动设备,因此 IE 缺乏支持应该不是问题。
这是我的小提琴分支。
Isotoma 有一篇 关于 Flexbox 的漂亮易读的介绍,我在调整 CSS 时引用了它。
Back in the day you would have to use absolute positioning. Now you can resolve this issue using CSS3 properties created for managing layout.
Use
display:box
andbox-ordinal-group
properties to display the contents of your.container
in whatever order you like, without using floats at all:(
-webkit
vendor prefixes only for simplicity)Since you're targeting mobile, IE's lack of support should not be a problem.
Here's my fork of your fiddle.
Isotoma has a nice, readable introduction to flexbox that I referenced while tweaking your CSS.
如果您知道元素的
高度
和宽度
,则可以使用边距
。演示
如果您不这样做,则可能需要 JavaScript。这是一个类似问题。
If you know the
height
andwidth
of the elements, it's possible withmargin
.Demo
If you don't, JavaScript may be necessary. Here is a similar question.