Псевдокласс: active применяется во время
ссылка выбирается пользователем.
CSS1 был немного двусмысленным в этом
Поведение: «Активная» ссылка
который в настоящее время выбирается (например,
нажатием кнопки мыши)
читатель. "Кроме того, в CSS1,: активный был
взаимоисключающие от: ссылка и
: Посетил. (И не было: hover
псевдо-класс.)
CSS2 изменил вещи так, что правила для
: active может применяться одновременно с
: посетил или: ссылка. И поведение
было объяснено немного лучше:
: активный псевдокласс применяется в то время как
элемент активируется
пользователь. Например, между временами
пользователь нажимает кнопку мыши и
отпускает его. "
IMO, FF и другие лучше соответствуют CSS2
чем IE. Но так как ссылка предполагается
чтобы загрузить новую страницу, IE мог
законно сказать, что ссылка до сих пор
"активный", пока новая страница
загрузка, что и происходит.
Вы можете увидеть подобное
нелогичное поведение в FF
нажав на ссылку, но перемещая
мышь от ссылки удерживая
кнопка мыши вниз. Ссылка не
активирован (новая страница не загружена),
но ссылка остается в: active
государство. С другой стороны, Chrome и
Опера деактивирует ссылку, но на
разные времена; Хром, как только
мышь покидает область ссылок, Опера не
пока кнопка мыши не отпущена. IE
ведет себя так же, как FF в этом
пример. (Нажмите Enter после перетаскивания
отведите мышку от ссылки, и вы
увидеть больше различий в поведении.)
Я бы не назвал ни одного из них
отличия "жучки", из-за
неясности в спецификации.
Единственное, что я могу предложить - это
принять, что вы не можете контролировать каждый
аспект поведения браузера. Пользователи
разные браузеры имеют разные
ожидания поведения, и если вы
начать возиться с ожиданием пользователя,
вы на неправильном пути.