Below is are the styles used for the rotate.
The first set of styles will allow animation when the user rolls out:
#rotate{
-webkit-transition: all .5s ease-out;
-moz-transition: all .5s ease-out;
-o-transition: all .5s ease-out;
-ms-transition: all .5s ease-out;
transition: all .5s ease-out;
}
These are the main set of styles that will trigger the rotate transform on the hover
#rotate:hover{
-moz-transform:rotate(360deg);
-moz-transition-timing-function: ease;
-moz-transition-duration: .5s;
-webkit-transform:rotate(360deg);
-webkit-transition-timing-function: ease;
-webkit-transition-duration: .5s;
-ms-transform:rotate(360deg);
-ms-transition-timing-function: ease;
-ms-transition-duration: .5s;
-o-transform:rotate(360deg);
-o-transition-timing-function: ease;
-o-transition-duration: .5s;
transform:rotate(360deg);
transition-timing-function: ease;
transition-duration: .5s;
}