Стань PHP-разработчиком с нуля с трудоустройством в IT-компании

Дерево навыков/CSS-счётчики/ Состояние CSS counters

  1. Базовый уровень

    • Reset state

      Создаёт counter через `counter-reset` с заданным начальным значением.

    • Increment state

      Изменяет существующее значение через `counter-increment`.

    • Explicit set

      Присваивает существующему counter точное значение через `counter-set`.

    • Operation defaults

      Применяет разные default integers для reset, increment и set.

    • Current value

      Получает innermost value через `counter()`.

    • Nested values

      Получает последовательность nested values через `counters()`.

    • Implicit `list-item`

      Использует implicit counter, связанный с list items.

  2. Продвинутый уровень

    • Multiple names

      Обрабатывает несколько counter names в одном property value.

    • Duplicate reset

      Для повторяющегося имени в `counter-reset` применяет последнее значение.

    • Duplicate increment

      Последовательно суммирует повторяющиеся increments одного имени.

    • Duplicate set

      Для повторяющегося имени в `counter-set` сохраняет последнее присваивание.

    • Implicit instantiation

      Создаёт отсутствующий counter при increment, set или чтении.

    • Counter scope

      Определяет descendants и following siblings, входящие в scope counter.

    • Self-nesting

      Создаёт вложенный counter того же имени внутри inherited counter.

    • Innermost state

      Выбирает последний counter данного имени как innermost.

    • Nested separator

      Соединяет nested representations separator из `counters()`.

    • Reversed state

      Создаёт reversed counter с явным или вычисляемым initial value.

    • `list-item` increment

      Применяет автоматический increment и его explicit override.

    • Host-list integration

      Согласует implicit state с host-language `start`, `value` и `reversed` semantics.

  3. Экспертный уровень

    • Inheritance sources

      Собирает counter set из parent или preceding sibling по нормативным правилам.

    • Tree-order values

      Получает inherited values от preceding element в tree order.

    • Sibling obscuring

      Заменяет earlier sibling counter новым counter того же имени в соответствующем scope.

    • Operation order

      Применяет inheritance → reset → increment → set → use.

    • Style-containment boundary

      Локализует изменения counter state внутри style-contained subtree.

    • Box-generation boundary

      Не изменяет counter state на element или pseudo-element, который не генерирует box.