HTML / CSS内联块在div中没有​​浮动Div

时间:2013-03-06 18:11:35

标签: html css-float displaytag css

我在DIV中有3个DIV。这些盒子将有一个图像。目前它们是未来的图像占位符。

我想使用display: inline-block;将它们排成一行。由于某种原因,它们仍然是垂直的而不是水平的。我不想使用float因为我觉得浮动应该在其他地方使用。

HTML:

<div class="quickboxes">
  <div id="box1"><img name="" src="" width="75" height="75" alt="">1</div>
  <div id="box2"><img name="" src="" width="75" height="75" alt="">2</div>
  <div id="box3"><img name="" src="" width="75" height="75" alt="">3</div>
</div>

CSS:

.quickboxes {
    display: inline-block;
}

#box1 {
    width: auto;
}

#box2 {
    width: auto;
}

#box3 {
    width: auto;
}

4 个答案:

答案 0 :(得分:1)

显示:内联块;需要在图像div的css中,而不是包含div。

答案 1 :(得分:1)

添加规则:

#box1, #box2,#box3 {
display:inline-block;
}

<强> jsFiddle example

为了使行在行中,你还必须在它们上设置内联块属性,而不仅仅是父容器(你可能不需要它)。

答案 2 :(得分:1)

避免使用inline-block的另一种方法是使用浮点数。 将它们浮动到左侧并清除每个div中的浮动。

答案 3 :(得分:0)

如果你在两者中都包含inline-block会更好:

.quickboxes {
    display: inline-block;
}
#box1, #box2,#box3 {
display:inline-block;
}

以这些方框为中心

.quickboxes {
    display: inline-block;
position: relative;
left: -50%; /*- is important for outer div*/
}
#box1,#boc2,#box3{
display: inline-block;
position: relative;
left: 50%; /* + is important for inner div*/
}