Справочник CSS-селекторов: все виды с примерами и таблицей специфичности

Знание CSS-селекторов — основа верстки. Чем точнее вы умеете выбирать элементы, тем меньше лишних классов в HTML и чище код. Этот справочник охватывает все виды селекторов: от базовых до продвинутых псевдоклассов и атрибутных.

Базовые селекторы

Селектор Пример Что выбирает
Тег p Все элементы <p>
Класс .btn Элементы с class=”btn”
ID #header Элемент с id=”header”
Универсальный * Все элементы

Комбинаторы

Атрибутные селекторы

Псевдоклассы структуры

Псевдоклассы состояния

Псевдоэлементы

Псевдокласс :lang()

Специфичность (Specificity)

Когда несколько правил применяются к одному элементу, побеждает то, у которого выше специфичность:

Тип Вес
Инлайн стиль style="..." 1-0-0-0
ID #id 0-1-0-0
Класс, атрибут, псевдокласс 0-0-1-0
Тег, псевдоэлемент 0-0-0-1

Практические советы

  • Избегайте чрезмерно длинных цепочек — .nav ul li a span хрупко и медленно
  • Предпочитайте классы тегам — переиспользуемее и быстрее
  • :not() теперь принимает список: :not(h1, h2, h3) — поддерживается в Chrome 88+
  • Используйте :is() для сокращения: :is(h1, h2, h3) a вместо трёх правил