2009-08-06 78 views

回答

0

这是怎么回事?

div { 
    /* either */ margin-left: 110px; 
    /* or */  float: left; 
} 
+0

呃!我拿走了剩余的余量:110px;并顺利运行!我不知道FLOAT元素中的CLEAR属性不受外部其他块的影响。谢谢! – kiewic 2009-08-06 04:53:17

+0

噢,对不起。如果div没有浮动,保证金就会有用。 :) – deceze 2009-08-06 04:55:15

0

这工作在我的机器上IE8和Firefox测试的(唯一的浏览器我在乎)

label { 
    clear:left; 
    float:left; 
    margin-right:10px; 
    text-align:right; 
    width:100px; 
    border:solid 1px; 
} 
input { 
    float:left; 
    border:solid 1px; 
} 
div { 
    float:left; 
    border:solid 1px; 
} 

和HTML代码:

<label>x</label><input type="text" /> 
    <label>x</label><input type="text" /> 
    <label>x</label><input type="text" /> 
    <label>x</label><input type="text" /> 
    <label>x</label> 
    <div> 
     <label>y</label><input type="text" /> 
     <label>y</label><input type="text" /> 
     <label>y</label><input type="text" /> 

    </div> 
0

浮动元素使他们被渲染为块盒子并迫使非浮游物在它们周围流动。 div是一个块级元素,默认情况下它的clear属性设置为none,因此它在与第一个浮动元素相同的线上呈现,并且增长为消耗整条线,但div内的标签元素设置为向左清晰以便清除所有的标签/输入元素,并在它下面呈现。

通过将div元素设置为像输入一样浮动,它将被渲染为与其他浮动块内嵌的块框。

变化:

input { 
    float:left; 
} 

到:

input, div { 
    float:left; 
}