Я просматривал этот пример CSS со страницы Mozilla для :not()
селектор.
Пример:
p:not(.classy) { color: red; }
:not(p) { color: green; }
<p>Irgendein Text.</p>
<p class="classy">Irgendein anderer Text.</p>
<span>Noch mehr Text<span>
Что я полностью понимаю:
- Я понимаю, почему первый элемент
p
красный, потому что это элементp
, и он не имеет класса «классный». - Я также понимаю, почему элемент
span
зеленый, потому что он выбран элементом:not(p)
, а не элементомp
.
Но почему второй элемент p
зеленый? Он не будет выбран первым селектором, потому что это элемент p
без класса classy
. Но он не будет выбран вторым, потому что это элемент p
. Так почему он зеленый?
:not([required])
в качестве быстрого полифилла для:optional
, но быстро понял, что это не то, что я имел в виду. 12.04.2018