CSS2.1 states :
Селектор (см. также раздел селекторов ) состоит из всего до (но не в том числе) первая левая фигурная скобка ({). Селектор всегда идет вместе с блоком декларации. Когда пользовательский агент не может разобрать селектор (т. Е. Он недействителен CSS 2.1), он должен игнорировать селектор и следующий блок объявлений (если есть).
blockquote >Обратите внимание, что поскольку CSS2.1 предварительные даты CSS3, «это неверно, CSS 2.1» написано в предположениях, что пользовательский агент полностью совместим с CSS2.1 и что CSS3 не существует в теории. На практике, где спецификация говорит «это недействительно CSS» или что-то в этом роде, ее следует понимать как «она не понятна пользовательскому агенту». См. Мой ответ на этот связанный вопрос для более подробного объяснения.
А именно, поскольку браузер одного поставщика не понимает префиксы других поставщиков, он должен отказаться от любых правил которые содержат эти непризнанные префиксы в псевдоклассических и псевдоэлементных селекторах.
Для некоторого понимания того, как было принято такое правило, см. этот ответ .
1 Обратите внимание, что WebKit печально известен тем, что частично нарушает это правило: в нем нет проблем с анализом правил, у селекторов которых есть непризнанные префиксные псевдоэлементы (которые в данном случае являются
::-moz-placeholder
). Тем не менее, псевдокласс класса:-moz-placeholder
в вашем комбинированном правиле приведет к его разрыву.