我遇到过许多涉及负边距的布局技术,比如这个用于侧边栏定位的classic。似乎这些技术可以很容易地应用于相对定位。
因此,不是这样:
.sidebar {
margin-left:-600px;
}人们会这样做:
.sidebar {
position:relative;
left:-600px;
}似乎相对定位在垂直方向上甚至可能更清晰,因为顶部边际操纵可能会受到边际问题的影响,等等。
一个比另一个有优势吗,或者它们实际上是相等的吗?
谢谢-
发布于 2011-03-10 14:29:53
我猜相对定位会将内容向左移动,但原始空间将被它占据,除非您将下一个元素也设置为相对的。然而,在负边距的情况下,内容及其原始空间都发生了移位。
发布于 2011-03-11 04:50:20
简单地说,相对定位将直观地移动相对元素的内容,而不会影响其在页面流中的位置。另一方面,页边距相对于元素的自然位置推动或拉出元素,因此会影响布局。
发布于 2011-03-10 14:36:53
position属性和负边距都有其用途,没有一个比另一个更好。这取决于你想要做什么。当你想左移、右移、上移、下移时,你并不是相对或绝对地定位每个元素。假设您有一个简单的位置标记,您希望将其移动到左侧,而不是仅仅为了移动它而给它一个<p>属性。保证金是正确使用的方法。页边距将影响网站上其他元素的位置,其中as位置将浮动,而不会影响其他元素的定位。虽然position属性有多种用途,但它主要用于创建站点的主要元素,例如:示例、页眉、页脚、包装器、菜单、内容左侧、内容右侧。
https://stackoverflow.com/questions/5256211
复制相似问题