Ich habe eine Situation, in der unter normalen CSS-Umständen ein fester Div genau dort positioniert wird, wo er angegeben ist ( top:0px
, left:0px
).
Dies scheint nicht respektiert zu werden, wenn ich ein Elternteil habe, das eine translate3d-Transformation hat. Sehe ich nichts Ich habe andere Webkit-transformierte Stil- und Ursprungsoptionen ausprobiert, hatte aber kein Glück.
Ich habe eine JSFiddle mit einem Beispiel angehängt, bei dem ich erwartet hätte, dass sich das gelbe Feld in der oberen Ecke der Seite befindet und nicht innerhalb des Containerelements.
Unten finden Sie eine vereinfachte Version der Geige:
#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>
Wie kann ich translate3d mit fest positionierten Kindern zum Laufen bringen?