спецификация W3.org CSS содержит следующее (акцент мой):
- Псевдокласс link: применяется для ссылок, которые еще не были посещены.
- Приведенный псевдослучайный класс применяется после того, как ссылка была посещена пользователем.
Два состояния взаимоисключающие.
Это означает, что любой стиль, применяемый к селектору :link
, должен применяться только к невидимым ссылкам. Однако единственным свойством, для которого это правда, является color
. Применение размеров шрифтов, фона и т.д. К селектору :link
предназначено для всех ссылок.
На странице есть примечание, в котором говорится:
Примечание. Возможно, авторы стилей могут злоупотреблять псевдонимами: link и: visited, чтобы определить, какие сайты посетил пользователь без согласия пользователя.
Таким образом, UA могут обрабатывать все ссылки как невидимые ссылки или реализовывать другие меры, чтобы сохранить конфиденциальность пользователя во время просмотра посещенных и незатронутых ссылок по-разному.
Однако, насколько мне известно, это относится только к стилям, возвращаемым Javascript, а не к отображению самих стилей.
Здесь сценарий JS, показывающий проблему. Разве браузеры отклоняются от спецификации здесь, или есть что-то, что мне не хватает?