Zwei Lösungen: Zum einen soll es helfen, dem zu öffnenden div-Container eine Breite mitzugeben. Also z.B.
#myDiv{
width: 600px;
}
Keine % Angaben oder ‚auto‘ Wert. Hat bei mir nix gebracht.
Der ‚dirty‘ Fix war und ist:
#myDiv{
border: 1px solid transparent;
}
Eine unsichtbare Umrandung und schon läuft die Animation ganz „smooth“ ab.