Ich habe ein Problem mit -webkit-transition
in Safari. Diese Übergänge funktionieren problemlos in Chrome, FF und IE10 (unter Verwendung der nicht vordefinierten Übergangseigenschaft).Safari CSS Breite Übergang funktioniert nicht mit verschiedenen Maßeinheiten
In meiner Website gibt es 3 Panels, die angezeigt werden können. Das Hauptfenster wird standardmäßig geöffnet und die anderen 2 werden auf der rechten Seite des Fensters ausgeblendet, um einen Teil ihres Inhalts anzuzeigen. Wenn auf ein reduziertes Panel geklickt wird, wird ihm über JS eine zusätzliche Klasse hinzugefügt, die auf 100% Breite übergeht.
CSS:
.panel-1{
width: 100%;
}
.panel-2{
width: 8rem;
position: absolute;
top: 0;
right: 0;
overflow: hidden;
z-index: 500;
transition: all 0.5s;
-webkit-transition: all 0.5s;
}
.panel-2:hover{
width: 10rem;
}
.panel-2.panel-open{
width: 100%;
}
.panel-3{
width: 4rem;
position: absolute;
top: 0;
right: 0;
overflow: hidden;
z-index: 501;
transition: all 0.5s;
-webkit-transition: all 0.5s;
}
.panel-3:hover{
width: 6rem;
}
.panel-3.panel-open{
width: 100%;
}
Das Problem scheint mit dem Unterschied von Maßeinheiten zu sein. Die Hover-Übergänge funktionieren wie vorgesehen (rem
bis rem
), jedoch überspringt der Breitenübergang (rem
zu %
) bei "Panel-Open" den Übergang und springt einfach auf. Wenn ich die Standardbreite auf einen Prozentwert anstelle von rem
umstelle, funktioniert der Übergang wieder. Ich kann dies jedoch nicht tun, da es sich um einen flüssigen Ort handelt und die Breite der Paneele nicht statisch und nicht relativ sein muss.
Ich habe versucht, eine min-width
in %
hinzuzufügen, aber das hat nicht geholfen. Jeder diesbezügliche Rat wird sehr geschätzt.
bitte Beispiel hier oder jsfiddle bieten. –
Was ist die Beziehung zwischen '.panel-1',' .panel-2' und '.panel-3'? Bitte geben Sie die HTML oder eine funktionierende jsFiddle. LE: Ich habe gerade das Datum dieser Frage bemerkt. Sergey, ich frage mich, ob es sich gelohnt hat, es zu bearbeiten und es zurückzubringen. BigRedEd hat wahrscheinlich vergessen, dass er inzwischen einen SE-Account hat. –