我有一个静态位置的元素,不能改变它(因为所有元素都会破坏)。我需要添加一个子元素,它具有相对位置。有没有办法做到这一点?
答案 0 :(得分:1)
position: static
的元素非位置。您不能将元素相对于另一个本身未定位的元素定位,即使该元素在正常情况下用作其包含块。
答案 1 :(得分: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/