HTML Code:
/* enough to set the padding once */
ul.rMenu li a {
padding-left: 30px !important;
}
ul.rMenu li.page-item-659 a:link,
ul.rMenu li.page-item-659 a:visited,
ul.rMenu li.page-item-659 a:active {
background-image: url(path/to/image-659.gif) !important;
}
ul.rMenu li.page-item-659 a:hover {
background-image: url(path/to/image-659-hover.gif) !important;
}
ul.rMenu li.page-item-661 a:link,
ul.rMenu li.page-item-661 a:visited,
ul.rMenu li.page-item-661 a:active {
background-image: url(path/to/image-661.gif) !important;
}
ul.rMenu li.page-item-661 a:hover {
background-image: url(path/to/image-661-hover.gif) !important;
}
However doing this with 2 different images (one for default, one for hover state) will cause a short delay the first time a given menu tab is being hovered, because the hover image needs to be loaded. It also creates 2 hits to the server for each menu tab. To avoid this use ONE "container image" that contains both the default and the hover image, for both the default and the hover state and change only the position of the "container image" on hover:
ul.rMenu li.page-item-661 a:link,
ul.rMenu li.page-item-661 a:visited,
ul.rMenu li.page-item-661 a:active {
background: url(path/to/
image-661-complete.gif) no-repeat scroll
bottom left !important;
}
ul.rMenu li.page-item-661 a:hover {
background: url(path/to/
image-661-complete.gif) no-repeat scroll
top left !important;
}
You'd create a new blank, transparent image
image-661-complete.gif with about 3 or 4 times the height of the original images
image-661.gif and
image-661-hover.gif, and paste (in i.e. Fireworks: "import") both these images into the "container image"
image-661-complete.gif, positioning one at the top and one at the bottom.
It is easier than it may sound and worth the effort because the hover effect will be very smooth.