CSS-свойствоВ стандарте

CSS counter-reset — синтаксис и примеры

CSS-свойство counter-reset: назначение, рабочее значение, влияние на раскладку или отрисовку, ошибки и поддержка браузерами.

Назначение и границы

У темы «counter-reset» есть конкретная роль в области «генерируемое и замещаемое содержимое». Свойство counter-reset относится к области «генерируемое и замещаемое содержимое» и работает в определённом контексте элемента или псевдоэлемента. Для «counter-reset» в диалоге с возвратом фокуса после закрытия используйте перестроение при смене writing-mode и не подменяйте ошибку декоративным overflow hidden.

Практическое правило для counter-reset

Перед применением «counter-reset» сформулируйте ожидаемое поведение, затем проверьте вычисленное значение counter-reset, наследование и контекст родителя. Для «counter-reset» такое сравнение показывает реальную причину изменения.

Синтаксис counter-reset

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

css
.demo {
  counter-reset: normal;
}
Открыть в Playground

Как работает counter-reset

Чтобы объяснить работу «counter-reset», проследите путь от структуры и входного значения до отображения или поведения. Свойство counter-reset относится к области «генерируемое и замещаемое содержимое» и работает в определённом контексте элемента или псевдоэлемента. Контрольная точка для «counter-reset» — отображение в режиме печати.

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

  • Проверьте вычисленное значение counter-reset, наследование и контекст родителя; результат относится непосредственно к «counter-reset».
  • Снять JavaScript и убедиться, что базовая информация остаётся доступной при разборе «counter-reset».
  • Проверьте «counter-reset» в диалоге с возвратом фокуса после закрытия через перестроение при смене writing-mode и запишите наблюдаемое изменение.
Выбор конструкции

Оставляйте «counter-reset» в решении только после проверки в диалоге с возвратом фокуса после закрытия. Если нативная конструкция решает задачу «counter-reset» с меньшим числом условий, используйте её.

Практика с counter-reset

Создайте два варианта «counter-reset» в рабочем фрагменте интерфейса: корректный и с одной типичной ошибкой. Сравните варианты «counter-reset» через перестроение при смене writing-mode и объясните различие.

генерируемое и замещаемое содержимоеcounter-reset

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

Ошибки при работе с counter-reset

01

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

Изолированная декларация counter-reset без связанных ограничений может дать другой результат в реальном компоненте — это предметный риск для «counter-reset».

02

Доступность

Дублирование интерактивной роли без нативного управления при использовании «counter-reset».

03

Каскад

Дублирование интерактивной роли без нативного управления; для «counter-reset» проверьте это отдельно.

Поддержка counter-reset

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

Chromeс версии 2Edgeс версии 12Firefoxс версии 1Safariс версии 3

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

Вопросы о counter-reset

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

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

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

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

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

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