2013-10-31 128 views
-1

有时我观察到CSS定位属性不能正常工作。下面是我的代码,CSS定位不起作用

.position 
{ 
position:absolute; 
left:50%; 
} 

上面的代码应该在屏幕的50%之类的元素位置,但情况并非如此。为了将它定位在所需的位置,我必须写'左:220%',原因可能是这个。

在此先感谢。

+0

你能举一个'它不工作'的例子吗? –

+1

没有人说它会在屏幕的50% - 它会在下一个适用父元素的50% –

+0

是的,正如@Pekka所说,它是最接近的父元素或元素的50%相对的“想象”位置:相对“作为下一个”位置:绝对“的锚点。您粘贴的代码在将元素发送到具有相对定位的父级的50%时是正确的。对于屏幕的50%,你想要“位置:固定” –

回答

0

元素与position: relativeposition: absolute是相对不到屏幕(或更确切地说,当前文档),但与position: relativeposition: absolute下一个父元素

Here is a JSFiddle说明问题。

enter image description here

你没有办法用纯CSS监狱的“爆发”。要将元素相对于文档放置,您应该使其成为文档的直接子元素。

+0

我发现我的文本框中只有10%的区域是可点击的。而其他元素只是忽略了文本框的其余90%,并且只考虑了文本框的10%部分。 ANY关于这个奇怪的情况的指针? –

+0

@Yogi我不是100%确定发生了什么,但它可能是一个Z指数问题。你可以展示JSfiddle吗? –

+1

嘿,谢谢你们,我对你们“打破监狱”的想法做了一点努力,而且看起来工作得很好。谢谢你的帮助。 –