Jump to content
  • 0

Неверная обработка a:visited:hover в Chrome и Safari


aviktorov
 Share

Question

Подскажите, сталкивался ли кто-нибудь со следующей проблемой.

При задании:

a:visited:hover {color:red;}

при подведении к ссылке мышью, она должна становиться красной.

В FF, IE, Опере работает, а в Хроме и Сафари нет.

Других стилей в документе нет. Что может быть?

Link to comment
Share on other sites

16 answers to this question

Recommended Posts

  • 0

В FF, IE, Опере работает, а в Хроме и Сафари нет.

У меня везде работает. Какие у вас версии браузеров?

a:visited, a:hover {color:red;}

а так?

ТС имел ввиду смену цвета visited ссылки при наведении на нее мышки, а не одинаковый цвет для visited и hover ссылки.

Link to comment
Share on other sites

  • 0

У меня везде работает. Какие у вас версии браузеров?

ТС имел ввиду смену цвета visited ссылки при наведении на нее мышки, а не одинаковый цвет для visited и hover ссылки.

Верно.

У меня не работает в Chrome 16.0 и Safari 5.1.2

У вас в этих браузерах при подведении курсора к ссылке она становится красной (не при нажатии)?

Link to comment
Share on other sites

  • 0

У вас в этих браузерах при подведении курсора к ссылке она становится красной (не при нажатии)?

Да, посещенная ссылка при наведении курсора становится красной. Странно, что у вас не работает, т.к. ничего особенного в a:visited:hover нет.

Link to comment
Share on other sites

  • 0

Может быть необходимо в таком случае всегда использовать пару?:

a:link:hover{color:white;}
a:visited:hover {color:red;}

Нет я делал так:

a:hover{color:white;}
a:visited:hover {color:red;}

И все работало.

Link to comment
Share on other sites

  • 0

Я вас не понимаю... a:hover работает всегда, независимо от того посещенная ссылка или нет. А вы занимаетесь порнографией какой-то.

Нужно сделать отличный hover цвет посещенной ссылки. То есть если мы наведем мышку на не посещенную ссылку, то она станет белой. А если на посещенную, то она станет красной. Я конечно тоже не понимаю зачем это использовать, но если дизайн требует...

Link to comment
Share on other sites

  • 0

Вообще, согласно спеке, псевдоклассы :link и :visited "эксклюзивны", т.е. их нельзя комбинировать с другими псевдоклассами. Так что в этом плане WebKit ведет себя абсолютно правильно, а вот остальные порят отсебятину.

UPD: Но вообще у меня так работает в Хроме.

a {color: red;}
a:visited {color: green;}
a:hover {color: lime;}
a:hover:visited {color: yellow;} /* применит желтый */

Link to comment
Share on other sites

  • 0

Но вообще у меня так работает в Хроме.

a {color: red;}
a:visited {color: green;}
a:hover {color: lime;}
a:hover:visited {color: yellow;} /* применит желтый */

Вот и я о чем говорю. Значит хром тоже порит отсебятину.

Link to comment
Share on other sites

  • 0

Вообще, согласно спеке, псевдоклассы :link и :visited "эксклюзивны", т.е. их нельзя комбинировать с другими псевдоклассами.

Нет, не так. Там говорится «mutually exclusive», что переводится как «взаимоисключающие». То есть к одной ссылке нельзя применить два этих псевдокласса одновременно. Ничего про комбинации с другими псевдоклассами это не говорит.

  • Like 1
Link to comment
Share on other sites

  • 0

Да? Может я не так перевел. Меня смутило отсутствие примера смешивания динамических и статических псевдоклассов в спеке. Тогда извиняюсь, что ввел в заблуждение.

Link to comment
Share on other sites

  • 0

Имхо, для селекторов актуальная рекомендация сейчас скорее эта. Правда, примеров :link:hover/:hover:visited/etc. там тоже нет, но подчеркнута "уживчивость" с другими псевдами у всей "интерактивной" тройки (H/F/A), плюс отдельным примечанием показана возможность :visited:active (по общей логике, :visited:hover тем более возможен).

Наличие бага в Хроме (16.0.912.77 m/Win 7 Pro x86) подтверждаю: :visited:hover (как и :hover:visited) работает только в паре с каким-либо другим :hover-ом.

Link to comment
Share on other sites

  • 0

Я еще дополнительно посмотрел код главной страницы Яндекса и там тоже используется совместно:

:link:hover,:visited:hover

В общем теперь стало понятно, что это именно баг Хрома и Сафари.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy