2015-11-26 68 views
-2

我有一个静态位置的元素,不能改变它(因为所有会破坏)。而且我需要添加一个子元素,并且具有相对的位置。有没有办法做到这一点?有没有什么方法可以设置相对于静态父元素的元素位置?

+1

添加'位置:relative'到静态定位的元素会做* vitually什么*通过自身的孩子。目前还不清楚你想要做什么。寻求代码帮助的问题必须包含在问题本身**中重现它所需的最短代码**。请参见[**如何创建最小,完整和可验证的示例**](http://stackoverflow.com/help/mcve) –

+0

是的。但重要的是要记住,孩子永远是相对于父母的。如果您告诉我们您的预期结果是什么,那将更容易提供帮助。你想在页面上发生什么? – Szandor

回答

1

要添加相对子元素,只需制作一个相对容器并在其中添加您的子元素。

<div class="static"> 
    <div class="relative"> 
     <div class="child"></div> 
    </div> 
</div> 

.static { 
    border: 1px solid #000; 
    height: 200px; 
    position: static; 
    width: 200px; 
} 
.relative { 
    position: relative; 
    height: 100%; 
    width: 100%; 
} 
.child { 
    position: absolute; 
    left: 50%; 
    top: 50%; 
    background-color: #f00; 
    height: 50px; 
    width: 50px; 
    transform: translate(-50%, -50%); 
} 

我创建了一个例子给你:http://jsfiddle.net/7L6bgruh/

1

元素position: static -positioned。即使该元素在正常情况下充当其包含块,您也不能将元素相对于本身未定位的另一元素进行定位。

相关问题