Подтвердить что ты не робот

Почему якорные псевдоклассы a: link,: visited,: hover,: active должны быть в правильном порядке?

В соответствии с W3 Schools утверждение о том, что псевдоклассы в объявляемом элементе объявлены жизненно важно.

Почему это? Есть ли другие?

4b9b3361

Ответ 1

Здесь есть подробное описание:

http://meyerweb.com/eric/css/link-specificity.html

Это связано с спецификой CSS.
Цитируя оттуда:

Все они могут применяться к гиперссылке, а в некоторых случаях применяется более одного. Например, невидимая ссылка может зависеть и активна одновременно с невидимой ссылкой. Поскольку три из вышеприведенных правил применяются к гиперссылке, а селектора имеют одинаковую специфичность, то последний из них выигрывает. Поэтому "активный" стиль никогда не появится, потому что он всегда будет переопределен стилем "hover". Теперь рассмотрим гиперссылку, которая была посещена. Это всегда и навсегда будет фиолетовым, потому что его "посещаемый" стиль превосходит любое другое состояние, в том числе "активное" и "зависание".

Поэтому рекомендуемый порядок в CSS1 выглядит следующим образом:

A: ссылка
A: посещено
A: hover
А: активный

BTW W3 Schools - не лучший ресурс для формальных определений. Вам лучше отправиться в источник, w3c. Например, это не "жизненно важно", но рекомендуется.