2

div1 向左浮动,因此 div2 出现在它旁边。如果我想在 div2 上添加 10px 的左边距,为什么我需要将它设置为 60px?IE。div1 + 10px 的宽度。我可以使 div2 相对于 div1 以便我可以将 div2 左边距设置为 10px 吗?

<!DOCTYPE html>
<html>
    <head>
        <style>
            #div1{
                width: 50px;
                float: left;
            }
            #div2 {
                margin-left: 60px;
            }
            #div1, #div2{
                border: 1px solid red;
            }
        </style>
    </HEAD>
    <BODY>
        <div>
            <div id="div1">
                div1
            </div>
            <div id="div2">
                div2
            </div>
        </div>
    </BODY>
</html>

JSfiddle

4

2 回答 2

2

浮动将元素从文档流中分离出来。您需要在 60px 处添加左边距的原因是要清除左侧浮动 div ...如果您希望它们都内联,我建议使用:

        #div1{
            width: 50px;
            display: inline-block;
        }
        #div2 {
            margin-left: 10px;
            display: inline-block;
        }
        #div1, #div2{
            border: 1px solid red;
        }
于 2013-10-11T15:17:23.107 回答
0

您需要float: left为#div2 添加。

于 2013-10-11T15:21:43.487 回答