You can use jQuery as pointed out in bipen's answer.
I have some simple CSS for handling hover transitions but as said by mikakun, this will only work for browsers CSS3 check out caniuse for compatible browsers.
li {
/* put your base styles here */
}
li:hover {
/* put your new styles here */
transition:all 300ms ease;
-moz-transition:all 300ms ease;
-webkit-transition:all 300ms ease;
-o-transition:all 300ms ease;
}
This will put a 300ms transition for whatever you specify for the particular elements.
You can see this in action if you have a CSS3 compatible browser:
http://jsfiddle.net/3leven11/7aRhe/