The counter-reset CSS property resets a CSS counter to a given value. This property will create a new counter of the given name. To change the value of an existing counter use counter-set, or counter-increment.

Note: The counter's value can be increased or decreased using the counter-increment CSS property.


/* Set "my-counter" to 0 */
counter-reset: my-counter;

/* Set "my-counter" to -1 */
counter-reset: my-counter -1;

/* Set "counter1" to 1, and "counter2" to 4 */
counter-reset: counter1 1 counter2 4;

/* Cancel any reset that could have been set in less specific rules */
counter-reset: none;

/* Global values */
counter-reset: inherit;
counter-reset: initial;
counter-reset: revert;
counter-reset: unset;

The counter-reset property is specified as either one of the following:

  • A <custom-ident> naming the counter, followed optionally by an <integer>. You may specify as many counters to reset as you want, with each name or name-number pair separated by a space.
  • The keyword value none.



The name of the counter to reset.


The value to reset the counter to on each occurrence of the element. Defaults to 0 if not specified.


No counter reset is to be performed. This can be used to override a counter-reset defined in a less specific rule.

Formal definition

Initial valuenone
Applies toall elements
Computed valueas specified
Animation typediscrete

Formal syntax

[ <custom-ident> <integer>? ]+ | none


Resetting named counters

h1 {
  counter-reset: chapter section 1 page;
  /* Sets the chapter and page counters to 0,
     and the section counter to 1 */


CSS Lists Module Level 3 (CSS Lists 3)
# counter-reset

Browser compatibility

BCD tables only load in the browser

See also