浮动:使用DIV时出现问题?

时间:2009-08-10 12:29:05

标签: html css

我有问题并排排列2个Divs,就像表中的2列一样?有时它们会正确对齐,但有时右边的Div会出现在左边的Div下面,如果我刷新页面,则div会返回原来的位置。

如何配置它们以便div总是并排显示?

由于

6 个答案:

答案 0 :(得分:1)

我建议你在alistapart.com上阅读这两篇很棒的文章

CSS Swag: Multi-Column Lists

Faux Absolute Positioning

他们真的很有助于理解'浮动'属性。

答案 1 :(得分:1)

制作浮动div时,重要的是设置“float”和“width”属性。

<div style="float:left;width:100px">Left Div</div>
<div style="float:left;width:100px">Middle Div</div>
<div style="float:left;width:100px">Right Div</div>
<div style="clear:both;">Bottom Div</div>

会生成:

==============================================
|  Left Div   |  Middle Div   |  Right Div   |
|             |               |              |
|             |               |              |
|             |               |              |
|             |               |              |
==============================================
|                 Bottom Div                 |
==============================================

如果您将浏览器调整为较小的窗口,div将会换行。这是默认行为。

答案 2 :(得分:0)

了解box model

通常你会遇到问题,因为你的div内部填充会改变宽度。如果div太宽而无法放入空间,它将位于其他空间之下。

例如,如果您有两个宽度设置为200px的div。

如果在其中一个中将填充设置为5px,则实际宽度将为210px(取决于浏览器)。

但这可能有很多原因。

答案 3 :(得分:0)

最好接受此行为,因为您无法控制访问者将使用的屏幕大小 - 这样可以使您的布局适用于移动电话等设备。

答案 4 :(得分:0)

问题在于宽度,当浮动左边的2个div遇到缩小的父节点时,则最右边的CSS规则放在下面。

答案 5 :(得分:0)

如果div太宽而无法放在一条线上,它们就不会。因此,如果您使用像素值并且屏幕不够宽,则无法使用。但是如果你使用相对宽度,比如相对宽度为47%,那么你可以确定它们总是合适的尺寸以便彼此相邻,因为它们会在窗口缩小时收缩。现在,如果它们都是20像素宽,它们可能看起来有点奇怪,但这将确保它们总是彼此相邻。 :d