Хорошо ли определять каждый псевдокласс состояния ссылки разными цветами?

Должны ли мы всегда использовать все эти псевдоселекторы с разными цветами?

a:link { color: blue }
a:active { color: white;}
a:hover { color: white;}
a:visited {color:green;}

В основном мы определяем их для ссылок в основной области содержимого, но проблема в том, что они переопределяют все ссылки на боковую панель, навигационные ссылки и т. д., тогда нам нужно снова создать определение для навигационных ссылок, если навигация имеет другую цветовую схему?

Обновление: И еще одна проблема заключается в том, что если мы решим использовать все, то как выбрать цвет для активного, наведенного и посещенного, потому что клиент и дизайнер никогда не предоставляют цвет для всех. они предоставляют только цвет ссылки


person Jitendra Vyas    schedule 12.02.2010    source источник


Ответы (2)


Нет необходимости. Определите те, которые вы хотите определить. Позвольте каскаду работать как обычно для тех, где вы счастливы, что это произойдет.

В описанном вами случае похоже, что вы недовольны этим. Таким образом, вы должны определить стили для состояний в каждом случае.

Как несколько отступлений…

  • Обычно также рекомендуется определить :focus.
  • Большинство людей хотят, чтобы эффекты :hover применялись к посещенным и непосещенным ссылкам, поэтому :hover должен стоять после :link и :visited в исходном коде (возможно, вам это не нужно, но большинство людей хотят).
  • Ссылки обычно активируются при нажатии на них. Вы не можете нажать на ссылку, не наведя на нее курсор. Вы почти наверняка должны определить :active после :hover и :focus.
person Quentin    schedule 12.02.2010
comment
я думаю, что лучше определить только для #main-content {....}. и :focus не работает в IE, поэтому пользователь IE не получит стиль фокуса - person Jitendra Vyas; 12.02.2010
comment
У меня нет под рукой теста, но я был бы очень удивлен, если бы в IE8 не было поддержки :focus. Нет никаких причин не тратить немного времени на добавление поддержки чего-то, что поддерживается большинством основных браузеров (даже если это не включает IE) — если это не поддерживается, пользователям не становится хуже. - person Quentin; 12.02.2010
comment
да, вы правы, я только что говорил об IE. разве это не значит, я не буду добавлять :focus - person Jitendra Vyas; 12.02.2010

Что касается вашего навигационного вопроса, я бы в большинстве случаев старался избегать определения разных цветовых схем/поведений для одинаковых элементов (в данном случае a) на вашем сайте.

person Bob    schedule 12.02.2010