Псевдоклассы CSS :link и :visited - придерживаются ли веб-браузеры спецификации?

В спецификации W3.org CSS говорится следующее (выделение мое):

  • Псевдокласс :link применяется для ссылок, которые еще не были посещены.
  • Псевдокласс :visited применяется после того, как ссылка была посещена пользователем.

Эти два состояния являются взаимоисключающими.

Это означает, что любой стиль, применяемый к селектору :link, должен применяться только к непосещенным ссылкам. Однако единственным свойством, для которого это верно, является color. Применение размеров шрифта, фона и так далее к селектору :link нацелено на все ссылки.

Далее на странице есть примечание, которое гласит:

Примечание. Авторы таблиц стилей могут злоупотреблять псевдоклассами :link и :visited, чтобы определить, какие сайты посетил пользователь без его согласия.

Поэтому UA могут рассматривать все ссылки как непосещенные, или применять другие меры для сохранения конфиденциальности пользователя при различном отображении посещенных и непосещенных ссылок.

Однако, насколько я знаю, это относится только к стилям, возвращаемым Javascript, а не к отображению самих стилей.

Вот JS fiddle, демонстрирующий проблему. Браузеры отклоняются от спецификации, или я что-то упускаю?

10
задан BoltClock 3 April 2012 в 05:39
поделиться