CSS counter-increment

The CSS counter-increment property assists in generating automatic numbering (for example, Heading 1, Heading 2, Heading 2.1 etc) by incrementing the count by a given number.

Every element has a collection of zero or more counters, which are inherited through the document tree. Counters have a name, an integer value, and a creator element. They can also have another counter nested inside themselves.

The counter-increment property indicates by how much the counter is incremented for every occurrence of the element. The default increment is 1. Zero and negative integers are allowed.

The counter-increment property accepts one or more names (identifiers for the counter/s), with each one (optionally) followed by an integer (which indicates by how much the count is to be incremented or decremented).

Also see the counter-reset and content properties.


Possible Values

This element does not alter the value of any counters.
custom-ident integer?

The element alters the value of one or more counters on it. If there is not currently a counter of the given name on the element, the element creates a new counter of the given name with a starting value of 0 (though it may then immediately set or increment that value to something different).

If an integer is provided after a custom-ident, it sets the innermost counter of the given name's value to that integer (for the counter-set property) or increments the value of the innermost counter of the given name by that integer (for the counter-increment property). Otherwise, the innermost counter of the given name's value is set to 0 (for the counter-set property) or incremented by 1 (for the counter-increment property).

In addition, all CSS properties also accept the following CSS-wide keyword values as the sole component of their property value:

Represents the value specified as the property's initial value.
Represents the computed value of the property on the element's parent.
This value acts as either inherit or initial, depending on whether the property is inherited or not. In other words, it sets all properties to their parent value if they are inheritable or to their initial value if not inheritable.

General Information

Initial Value
Applies To
All elements

Example Code

Official Specifications