【发布时间】:2015-08-05 08:56:18
【问题描述】:
为什么在转换父级时子级位置会受到影响?
我希望蓝色框保持在黄色框的右下角。但是当我翻译红色框时,蓝色框会移动到他的(红色)父级。
在现实生活中,红色方框代表我在 Angular 中的 ui-view。视图正在滑入和滑出。我无法更改 HTML 层次结构。
查看我的代码笔 https://codepen.io/benbesuijen/pen/GPOQjM
HTML
<div class="box-yellow">
<div class="box-red">
<div class="box-blue"></div>
</div>
</div>
CSS
.box-yellow {
background-color: yellow;
position: relative;
height: 200px;
width: 200px;
}
.box-red {
background-color: red;
height: 100px;
width: 100px;
}
.box-blue {
background-color: blue;
bottom: 0;
height: 50px;
position: absolute;
right: 0;
width: 50px;
}
.box-move {
transform: translateX(100%);
}
【问题讨论】:
-
一定要使用
translateX吗?您可能需要解释您的目标,因为我认为如果您不对这些框中的内容提供更多解释,您将会遇到更多问题? -
我认为这是一个问题,由转换时元素的堆叠上下文引起。在这里阅读更多:stackoverflow.com/questions/16148007/…
-
@Dan,我更新了我的描述。 Stewartside,谢谢,我会阅读它并希望我能找到解决方案。