Правильно ли комбинировать активный и псевдо-селектор при наведении, как: active: hover.? - PullRequest
4 голосов
/ 04 декабря 2010

Я где-то видел это, но не могу найти больше информации, говорящей мне, если это правильно:

.selector a:active:hover { color: #777; }
.selector a:hover:active { color: #777; }

Я не помню, какой из двух это был.

Но в любом случае Firefox, похоже, не нравится и ничего не делает.

Был ли это еще один пример учебника, демонстрирующего плохую практику ???

Ответы [ 3 ]

8 голосов
/ 04 декабря 2010

Оба хороши (и одинаково эквивалентны).Я только что протестировал в 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-кода клиенту.

0 голосов
/ 11 декабря 2012

Должно быть

a.selector: active: hover {color: # 777;}

a.selector: hover: active {color: # 777;}

НЕ

.selector a: active: hover {color: # 777;}

.selector a: hover: active {color: # 777;}

Все просто: P

0 голосов
/ 04 декабря 2010

это не правильно и не сработает, нужно их выделить.

.selector a:active, .selector a:hover { color: #777; }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...