long story short:
- you can easily animate/transition the
height
and also theopacity
of the menu, which gives it a nice fade'n'slide entrance. - IE does not understand transitions or opacity, and depending on your setup, just the
height: 0
wouldn't suffice (i.e. when you have negative margins…), so we go forvisibility
here, which does the – non animated – trick. - you absoluteley need to do transition on
visibility
as well, otherwise the menu would just pop in or out of view. - if you do not need to support IE 8, then forget about
visibility
, as IE 9 understandsopacity
, but doesn't understand transitions – which is fine.