CSS-справочникВ стандарте

CSS :first-child — как работает

CSS :first-child: принцип работы, корректный синтаксис, практический сценарий, ограничения, ошибки и актуальная совместимость.

Практический смысл

Для «:first-child» важно отделить назначение от случайного оформления. Псевдокласс :first-child сопоставляет элемент с определённым состоянием или структурным условием. При проверке в карточке материала с длинным заголовком сначала зафиксируйте отображение в режиме печати для «:first-child», затем оставляйте DOM-порядок логичным для чтения.

Практическое правило для :first-child

Перед применением «:first-child» сформулируйте ожидаемое поведение, затем не полагайтесь только на hover и сохраняйте эквивалентное состояние клавиатурного фокуса. Для «:first-child» такое сравнение показывает реальную причину изменения.

Синтаксис :first-child

Для демонстрации «:first-child» используется короткий код с наблюдаемым результатом. Сохраните структуру примера, когда будете проверять другое значение.

css
.button:first-child {
  outline: 2px solid #2563eb;
  outline-offset: 3px;
}
Открыть в Playground

Как работает :first-child

Браузер обрабатывает «:first-child» в контексте области «псевдоклассы»: селектор пересчитывается браузером при изменении состояния или структуры DOM. Для «:first-child» наблюдения через отображение в режиме печати и поведение без пользовательской таблицы стилей отделяют исходное условие от результата.

Проверка в проекте

  • Не полагайтесь только на hover и сохраняйте эквивалентное состояние клавиатурного фокуса; результат относится непосредственно к «:first-child».
  • Заменить демонстрационные данные пустыми и проследить за состоянием интерфейса при разборе «:first-child».
  • Проверьте «:first-child» в карточке материала с длинным заголовком через отображение в режиме печати и запишите наблюдаемое изменение.
Выбор конструкции

Используйте «:first-child», когда требуется выбрать элемент по состоянию, положению или отношению к другим узлам; подтвердите выбор предметной проверкой: не полагайтесь только на hover и сохраняйте эквивалентное состояние клавиатурного фокуса. Для «:first-child» более простой вариант предпочтителен, если он сохраняет тот же смысл и поведение.

Практика с :first-child

Проверьте «:first-child» в рабочем фрагменте интерфейса с длинным текстом, клавиатурным управлением и узким экраном. Отдельная проверка для «:first-child»: не полагайтесь только на hover и сохраняйте эквивалентное состояние клавиатурного фокуса.

псевдоклассы:first-child

Сценарий: в карточке материала с длинным заголовком.

Ошибки при работе с :first-child

01

Поддержка

Состояние :first-child не должно быть единственным способом увидеть важное действие или информацию — это предметный риск для «:first-child».

02

Контекст

Зависимость результата от placeholder вместо постоянной подписи при использовании «:first-child».

03

Устойчивость

Зависимость результата от placeholder вместо постоянной подписи; для «:first-child» проверьте это отдельно.

Поддержка :first-child

Для «:first-child» таблица собрана из закреплённой версии MDN Browser Compatibility Data. Указанная версия браузера показывает первое заявленное появление базовой поддержки «:first-child»; окончательное решение принимайте по аудитории конкретного проекта.

Chromeс версии 4Edgeс версии 12Firefoxс версии 3Safariс версии 3.1

Спецификация: источник 1.

Вопросы о :first-child

Как понять, что «:first-child» выбрано правильно?

«:first-child» выбрано правильно, когда оно решает задачу «выбрать элемент по состоянию, положению или отношению к другим узлам», сохраняет результат в карточке материала с длинным заголовком и проходит предметную проверку: не полагайтесь только на hover и сохраняйте эквивалентное состояние клавиатурного фокуса.

Нужен ли запасной вариант для «:first-child»?

Запасной вариант для «:first-child» нужен, если целевой браузер или режим не обеспечивает выбранное поведение. Без улучшения «:first-child» должно сохранять смысл, содержимое и основное действие.

Спецификации и источники

Синтаксис и статус проверяются по HTML Living Standard, спецификациям CSS и MDN Browser Compatibility Data. Примеры и объяснения подготовлены для этого сервиса.