Ошибка Webkit с `:hover` и несколькими смежными селекторами

Safari и Chrome, а также Opera и Firefox могут обрабатывать :hover псевдокласс и смежные селекторы:

a:hover + div {}

Это работает.

Однако при добавлении еще одного смежного селектора:

div:hover + a + div {}

Webkit разваливается.

Однако, если сначала навести курсор на и затем навести курсор на

, стиль применяется так, как должен.

Я еще больше запутался, потому что если добавить:

div:hover ~ div {}

с объявленным стилем или без него, он начинает работать так, как должен.

Демонстрация

Я вижу эту проблему в:

  • Google Chrome 15.0.874.121
  • Safari 5.1.1

для OS X.

Есть идеи?

14
задан BoltClock 30 November 2011 в 02:51
поделиться