Исключающий селектор not
Периодически сталкиваюсь с ситуацией, когда нужно применить правило ко всем селекторам, кроме того, у которого есть определённый класс. И всё время забываю как это делается, то скобки квадратные забуду, то ещё чего. Конструкция какая-то незапоминающаяся, поэтому просто оставлю это здесь:
input:not([type="submit"]) {
}
Но здесь есть один нюанс: если в элементе, к которому применяется данное правило будет идти перечисление классов, то селектор не сработает. Потому что для селектора class="custom" и class="custom first" не одно и то же.
Для этого нужно немного модифицировать наше правило следующим образом:
input:not([class*="custom-class"]) {
}
То есть мы ищем вхождение подстроки. И вот теперь всё будет работать как надо.
Вы должны авторизоваться, чтобы оставлять комментарии.
Комментарии ()