Here is a reduction. Behaviour is as expected in desktop Safari/WebKit. iOS has the problem (tested in iOS 9.2). http://codepen.io/benfrain/full/PZjpxr We have two divs inside another div. Both internal divs have a different colour background. One div has text in, one does not. When the button is clicked both divs translate out of their parent container (via transform3d). When the button is clicked again to toggle the class off, only the div without text transitions back to it's state as expected. The other does not appear until transition end.
Odd that iOS would be different from Mac.
<rdar://problem/28213700>
Can't replicate in iOS12