【发布时间】:2013-02-18 02:43:24
【问题描述】:
我有一种情况,在正常的 CSS 情况下,固定的 div 将准确定位在指定的位置(top:0px,left:0px)。
如果我有一个具有 translate3d 转换的父级,这似乎不受尊重。我没有看到什么吗?我尝试过其他 webkit-transform,例如样式和转换原点选项,但没有运气。
我附上了JSFiddle 的示例,其中我希望黄色框位于页面的顶角而不是容器元素的内部。
您可以在下面找到小提琴的简化版本:
#outer {
position:relative;
-webkit-transform:translate3d(0px, 20px , 0px);
height: 300px;
border: 1px solid #5511FF;
padding: 10px;
background: rgba(100,180,250, .8);
width: 80%;
}
#middle{
position:relative;
border: 1px dotted #445511;
height: 300px;
padding: 5px;
background: rgba(250,10,255, .6);
}
#inner {
position: fixed;
top: 0px;
box-shadow: 3px 3px 3px #333;
height: 20px;
left: 0px;
background: rgba(200,180,80, .8);
margin: 5px;
padding: 5px;
}
<div id="container">
Blue: Outer, <br>
Purple: Middle<br>
Yellow: Inner<br>
<div id="outer">
<div id="middle">
<div id="inner">
Inner block
</div>
</div>
</div>
</div>
如何使 translate3d 与固定位置的孩子一起工作?
【问题讨论】:
-
过滤器也会出现同样的问题:stackoverflow.com/q/52937708/8620333
标签: html css css-position css-transforms