The CSS is missing the animation that actually moves it up from off the bottom of the screen . Use # mail . havemailbefore content ' You have new messages ! ' position fixed bottom 24 px left 32 px webkitanimation havemail 8 s animation havemail 8 s background # ea 4848 borderradius 2 px boxshadow 0 1 px 5 px rgba 0 , 0 , 0 , 0 . 24 boxsizing borderbox color # fff font 14 px arial , sansserif height 48 px lineheight 1 padding 16 px 24 px textindent 0 webkittransform translateY 112 px transform translateY 112 px transition background . 25 s ease , boxshadow . 25 s ease zindex 100 # mail . havemailhoverbefore background # ec 5 b 5 b boxshadow 0 3 px 12 px rgba 0 , 0 , 0 , . 48 # mail . havemailactivebefore background # c 73 d 3 d boxshadow 0 4 px 14 px rgba 0 , 0 , 0 , . 76 webkitkeyframes havemail 0 %, 100 % webkittransform translateY 112 px 5 %, 95 % webkittransform translateY 0 keyframes havemail 0 %, 100 % transform translateY 112 px 5 %, 95 % transform translateY 0 instead . Note , you can ' t use your mail icon because the other icons around it are too close and they ' d be visible .