В спецификации W3C CSS 2.0 для селектора :hover
ничего не говорится о требовании атрибута href.
Я подозреваю, что это что-то специфичное для реализации, скорее всего, IE глупый. Если я правильно помню, Microsoft изобрела селектор :hover
до того, как он стал частью стандарта CSS, и первоначально он применялся только к якорям. Так что да, это, вероятно, причуды IE (6).
Хакерское исправление для IE6 (все IE?) Может заключаться в использовании href="#"
, который просто указывает на текущую страницу (и, следовательно, ничего не делает).