Оба хороши (и одинаково эквивалентны).Я только что протестировал в Firefox 4.0b6 / Mac, и он работает именно так, как я ожидал.В приведенном ниже примере ссылка становится красной, когда я указываю на нее, а затем зеленой, когда я удерживаю кнопку мыши нажатой.
<!DOCTYPE HTML>
<title>Test</title>
<style>
a:hover { color: red; }
a:active { color: yellow; }
a:hover:active { color: green; }
</style>
<h1><a href="test">gggg</a></h1>
Необычно, когда ссылка активируется по-другому, когда активируется с помощьюмышь, а не клавиатура.
Я подозреваю, что вы делаете классическую ошибку.:active
означает «Во время активации (например, когда кнопка мыши над ним нажата)», а не «Когда значение атрибута href разрешается в URI текущей страницы».
Псевдокласс не существуетэто означает «когда значение атрибута href разрешается в URI текущей страницы», для этого классическим шаблоном является добавление «текущего» или «выбранного» класса в привязку на сервере перед отправкой HTML-кода клиенту.