В самом деле, the same document was referenced in another question here. Это то, что я должен был сказать об этом:
Этот документ вам ссылку на это 10-летний проект.
Сейчас 11 лет, но дело не в этом (хотя это и говорит о весьма вероятной причине, почему приведенный вами пример не работает). Дело в том, что приведенный пример не указан в latest revision той же спецификации. Таким образом, предположительно, внедрение селекторов в атрибутах стиля считалось нежизнеспособным и отбрасывалось в результате.
Мой ответ the question linked in the comments предполагает, почему такая особенность была сочтена не жизнеспособны - это просто не совместимы с текущим состоянием CSS как языка:
Обратите внимание, что встроенные стили участвуют в том же каскаде, как селекторы в наборы правил и принимать наивысший приоритет в каскаде (!important
). Поэтому они имеют приоритет даже над псевдоклассовыми состояниями. Разрешение псевдоклассов или любых других селекторов в встроенных стилях могло бы ввести новый каскадный уровень, а вместе с ним и новый набор осложнений.
Конечно, я не претендую на то, чтобы говорить за людей, которые фактически приняли решения и/или написали спецификацию, но если бы я был одним из них, то я бы и дал за то, что не поддержал особенность.
Это также объясняет, почему ни один браузер не реализовал такую возможность (или, скорее, отсутствие реализации в числе факторов, вызывающих его пересмотреть, а затем в конце концов упал, давая поставщикам даже больше причин не чтобы начать реализовывать его сейчас, когда спецификация достигла статуса CR).
Урок здесь состоит в том, чтобы никогда не ссылаться на старые версии технических документов W3C в качестве канона. Всегда помните, чтобы просмотреть последние спецификации; вы должны найти ссылку в заголовке документа.
Возможный дубликат [CSS Псевдо-классы со встроенными стилями] (http://stackoverflow.com/questions/5293280/css-pseudo-classes-with-inline-styles) –
Ответы некорректные @PWKad – iConnor
As он ясно указывает на w3.org, что вы можете – iConnor