div块在Firefox中转到下一行

时间:2011-02-10 15:14:37

标签: html css

我的css中有display:block的div。此div块使用align = "absmiddle"。它会在Chrome中显示1行中的所有元素。但是,在firefox中,元素也会显示在下一行。如何让它们在firefox中以单行显示。

P.S:我已经尝试display: inline,但它并没有将它带入一行。

<div class="one"><input name="elementone" value="1" align="absmiddle" class="subone" /></div>

Css是

div.one,div.subone{
display:block; 
width:16px; 
height:100%;
background-position:0 0px;
border:0
}

2 个答案:

答案 0 :(得分:1)

我有点不清楚你想要完成什么 - 将输入元素集中在div中?

你需要的只是一个文本对齐:容器div的中心,它包含所有输入[.one是在你的示例html的情况下应该具有中心文本对齐的类]。

请注意,您的css存在一些问题

div.one,div.subone{ /*div.subone refers to a div with the class subone - not an input like you have*/
display:block; /*divs are already block elements */
width:16px;  /* may be the issue, why restrict the width? */
height:100%; /*basically meaningless */
background-position:0 0px; /*default*/
border:0
}

***注意:通常当你试图在他们自己的div中包含一堆内联元素(如输入)时,还有另一种方法可以对该猫进行换肤。例如,在这种情况下,如果你有一些具有类.one的div - 它们将显示在他们自己的行上,因为你的css要求每个div显示块。

答案 1 :(得分:0)

我真的不明白你的问题,但如果你想在一行中有多个<div class="one">,只需向左或向右浮动它们。但是,一旦容器div宽度超出,它们仍然会跳到第二行。您可以尝试在父div上使用空格和溢出的组合。

但正如我所说 - 你的问题在这个问题上还不清楚。