负利润与相对定位

时间:2011-03-10 06:22:54

标签: html css layout css-position margin

我遇到了许多涉及负边距的布局技术,例如这个classic用于侧边栏定位。似乎这些技术可以很容易地应用于相对定位。

所以不要这样:

.sidebar {
    margin-left:-600px;
}

一个人会这样做:

.sidebar {
    position:relative;
    left:-600px;
}

看起来相对定位甚至可能在垂直方向上更清洁, 因为利润率较高的操纵可能会受到利润率下降等影响。

一方面是否有任何优势,或者它们实际上是否相同?

谢谢 -

3 个答案:

答案 0 :(得分:25)

我猜相对定位会将内容移到左边,但原始空间将被它占用,除非你使下一个元素相对。然而,在负边距的情况下,内容和原始空间都会发生变化。

答案 1 :(得分:7)

简单地说,相对定位会在视觉上移动相对元素的内容,而不会影响它在页面流中的位置。另一方面,边距相对于其自然位置推或拉元素,因此影响布局。

答案 2 :(得分:2)

位置属性和负边距都有用,没有人比另一个好。这取决于你想要做什么。当你想要将它们从左上方向右移动时,你不要相对或绝对地定位每个元素。假设你有一个简单的<p>标签,你想要向左移动,你不给它一个位置属性只是为了移动它。保证金是正确的使用方法。保证金将影响您网站上其他元素的位置,因为位置将浮动而不会影响其他元素的定位。 position属性虽然可以在很多方面使用,但它主要用于使您的站点为ex的主要元素:示例,页眉,页脚,包装器,菜单,内容左,内容权限。