As much as I hate the hover feature, it seems to be working the way you said you wanted it to in Firefox. Have you tried looking at it in several different browsers?
The problem is probably in the stylesheet, which you did not show us. Have you made the mistake of combining the following attributes in the same class or placing their classes in the same tag?
- width or height attributes
- margins, borders, or paddings
- Absolute object locations
Internet Explorer makes a mess when this happens. It interprets these inside out from how the standard defines them.
I also do not see html tags or a doctype declaration. If both are missing, the browser will go into quirks mode.