CSS - counter-increment Property



CSS counter-increment property increments or decrements the value of one or more CSS counters by a given value. If no specific value is given, the default incremental value is 1. The property is used in combination with counter-reset and content properties.

Syntax

counter-increment: none | id | initial | inherit;

Property Values

ValueDescription
noneNo counter is incremented. Default.
id numberThe counter is identified by id. The number determines how many times the increment must happen on each occurence of the element. The default incremental value is 1. Negative values can be used.
initialIt sets the property to its default value.
inheritIt inherits the property from the parent element.

Examples of CSS Counter Increment Property

The following examples explain the counter-increment property with different values.

Counter Increment Property for Increasing Values

To have increasing values in the content, we can use the counter-increment property in combination with counter-reset and content properties. If no value is specified with the counter-reset property, then the default is 0. The default incremental value is 1. This is shown in the following example.

Example

<!DOCTYPE html>
<html>

<head>
   <style>
      .part1 {
         color: red;
         counter-reset: section;
      }

      .part1 h2::before {
         counter-increment: section;
         content: "Section " counter(section) ". ";
      }

      .part2 {
         color: green;
         counter-reset: part 7;
      }

      .part2 h2::before {
         counter-increment: part 2;
         content: "Chapter " counter(part) ". ";
      }
   </style>
</head>

<body>
   <h2>
      CSS counter-increment property
   </h2>
   <h4>
      Increasing values
   </h4>
   <p>
      Each encounter of h1 tag increments the counter by 1,
      the initial value is 0.
   </p>
   <div class="part1">
      <h2>
         HTML
      </h2>
      <h2>
         CSS
      </h2>
      <h2>
         JAVASCRIPT
      </h2>
      <h2>
         PHP
      </h2>
      <h2>
         SQL
      </h2>
   </div>
   <p>
      Each encounter of h1 tag increments the counter by 2,
      the initial value is 7
   </p>
   <div class="part2">
      <h2>
         Abstract
      </h2>
      <h2>
         Introduction
      </h2>
      <h2>
         Table of Contents
      </h2>
      <h2>
         Content
      </h2>
      <h2>
         Conclusion
      </h2>
   </div>
</body>

</html>

Counter Increment Property for Decreasing Values

To have decreasing values in the content, we can use the counter-increment property in combination with counter-reset and content properties. If no value is specified with the counter-reset property, then the default is 0. This is shown in the following example.

Example

<!DOCTYPE html>
<html>

<head>
   <style>
      .part1 {
         color: blue;
         counter-reset: section;
      }

      .part1 h2::before {
         counter-increment: section -1;
         content: "Section " counter(section) ". ";
      }

      .part2 {
         color: orange;
         counter-reset: part 7;
      }

      .part2 h2::before {
         counter-increment: part -2;
         content: "Chapter " counter(part) ". ";
      }
   </style>
</head>

<body>
   <h2>
      CSS counter-increment property
   </h2>
   <h4>
      Decreasing values
   </h4>
   <p>
      Each encounter of h1 tag decrements the counter by 1,
      the initial value is 0.
   </p>
   <div class="part1">
      <h2>
         HTML
      </h2>
      <h2>
         CSS
      </h2>
      <h2>
         JAVASCRIPT
      </h2>
      <h2>
         PHP
      </h2>
      <h2>
         SQL
      </h2>
   </div>
   <p>
      Each encounter of h1 tag decrements the counter by 2,
      the initial value is 7
   </p>
   <div class="part2">
      <h2>
         Abstract
      </h2>
      <h2>
         Introduction
      </h2>
      <h2>
         Table of Contents
      </h2>
      <h2>
         Content
      </h2>
      <h2>
         Conclusion
      </h2>
   </div>
</body>

</html>

Supported Browsers

PropertyChromeEdgeFirefoxSafariOpera
counter-increment4.08.02.03.19.6
css_reference.htm