Como te dije, el problema es que le estás asignando las viñetas a los enlaces y esa propiedad es de las listas. Agrega lo siguiente que te resolverá el problema en FF:
Código css:
Ver original#menu li:hover{
list-style-image: url(../imagenes/png/vineta_on.png)
}
Eso seguirá sin funcionar en el amigo IE ya que IE no reconoce el :hover en nada que no sea un enlace. Desgraciadamente, y aun no entiendo por que, no hay forma de referir al padre de un elemento mediante CSS puro y estándar.
Ahora entremos en lios con el IE. Al parecer en IE la propiedad list-style-image no se hereda por lo que la tienes que asignar directamente a los li y no a la lista completa y mucho menos a los enlaces:
Código css:
Ver original#menu
{
margin:0;
padding:0;
top:30px;
}
#menu li{
list-style-image:url(../imagenes/jpg/flecha.jpg);
}
#menu li:hover{
list-style-image: url(../imagenes/png/vineta_on.png)
}
#menu li a
{
text-decoration:none;
font-family:Arial, Helvetica, sans-serif;
font-size:11px;
color:#000000;
}
#menu li a:hover
{
color:#FFFFFF;
text-decoration:underline;
font-size:12px;
}
Ahora, si no me equivoco eso soluciona el problema con FF y con IE, aun que con IE6 sigue sin funcionar el cambio de viñeta. Para el cambio de viñeta en IE, creo que necesitarías Javascript, y claro, siempre puedes probar lo que dice Kseso? que la verdad no entendí tu razón para no usar esa opción.
Saludos, espero haber sido de ayuda.