位置:静态是否与位置:相对相同,没有指定其他属性?

Don*_*n P 1 css position css-position

是否position:static等同于position: relative没有指定 top、bottom、right 或 left 属性?

我认为这是因为一个元素postion: absolute相对于第一个没有postion: static. 使用 来创建元素似乎是任意的,如果不使用其他属性position: relative,它的行为将与 a 相同position: static。我想我可能会遗漏一些关于staticvs 的信息relative

谢谢!

Mr.*_*ien 5

答案是否定的,两者是不同的

position: static;意味着只是默认位置,你不能使用top, right, bottom, left除非和直到你使用position: relative, absolute or fixed,你需要使用边距,而且,position: relative;当子元素被定位时才真正起作用absolute,这样所有元素都可以浮动在position: relative;div内部,如果你只是保持它的静态,他们将从文档中消失......

看看例子

Demo1(保持div静态并使用top, left没有效果)

Demo2(使其position: relative;确实影响顶部、左侧)

Demo3(保持父div静态,子div定位后就会流出absolute

Demo4(子 div 定位absolute将测量其父 div 定位的顶部、右侧、底部、左侧relative

这 1 个简短且非常简单但功能强大的教程视频可以消除您的疑虑

还有一篇关于CSS 定位的短文


Guf*_*ffa 5

position: relative没有任何定位的情况下使用position: static与元素本身的工作方式相同,但对于具有position: absolute.

绝对定位的元素相对于它的包含块放置,并且包含块是最近的具有positionstatic.