Cool, that's exactly what I asked for.
After looking at it a bit and extending it (To add additional static boxes) it seems a bit brittle:
http://jsfiddle.net/UmXB2/3/
In order to handle the animation cleanly I need to find out the exact pixel differences between the two states...