Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

counter-reset

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨Juli 2015⁩.

* Some parts of this feature may have varying levels of support.

Die counter-reset CSS Eigenschaft erstellt benannte CSS-Zähler und initialisiert sie auf einen bestimmten Wert. Sie unterstützt das Erstellen von Zählern, die von eins bis zur Anzahl der Elemente zählen, sowie von solchen, die von der Anzahl der Elemente bis eins herunterzählen.

Probieren Sie es aus

counter-reset: none;
counter-reset: chapter-count 0;
counter-reset: chapter-count;
counter-reset: chapter-count 5;
counter-reset: chapter-count -5;
<section class="default-example" id="default-example">
  <div class="transition-all" id="chapters">
    <h1>Alice's Adventures in Wonderland</h1>
    <h2>Down the Rabbit-Hole</h2>
    <h2 id="example-element">The Pool of Tears</h2>
    <h2>A Caucus-Race and a Long Tale</h2>
    <h2>The Rabbit Sends in a Little Bill</h2>
  </div>
</section>
#default-example {
  text-align: left;
  counter-reset: chapter-count;
}

#example-element {
  background-color: lightblue;
  color: black;
}

h2 {
  counter-increment: chapter-count;
  font-size: 1em;
}

h2::before {
  content: "Chapter " counters(chapter-count, ".") ": ";
}

Syntax

css
/* Create a counter with initial default value 0 */
counter-reset: my-counter;

/* Create a counter and initialize as "-3" */
counter-reset: my-counter -3;

/* Create a reversed counter with initial default value */
counter-reset: reversed(my-counter);

/* Create a reversed counter and initialize as "-1" */
counter-reset: reversed(my-counter) -1;

/* Create reversed and regular counters at the same time */
counter-reset: reversed(pages) 10 items 1 reversed(sections) 4;

/* Remove all counter-reset declarations in less specific rules */
counter-reset: none;

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

Werte

Die counter-reset Eigenschaft akzeptiert eine Liste von einem oder mehreren durch Leerzeichen getrennten Zählernamen oder das Schlüsselwort none. Bei Zählernamen verwenden reguläre Zähler das Format <counter-name>, und umgekehrte Zähler verwenden reversed(<counter-name>), wobei <counter-name> ein <custom-ident> oder list-item für den eingebauten <ol> Zähler ist. Optional kann jedem Zählernamen ein <integer> folgen, um seinen Anfangswert festzulegen.

<custom-ident>

Gibt den Namen des zu erstellenden und zu initialisierenden Zählers im <custom-ident> Format an. Die Funktionalnotation reversed() kann verwendet werden, um den Zähler umgekehrt zu markieren.

<integer>

Der Anfangswert, der auf den neu erstellten Zähler gesetzt werden soll. Standardmäßig 0, falls nicht angegeben.

none

Gibt an, dass keine Zählerinitialisierung erfolgen soll. Dieser Wert ist nützlich, um counter-reset Werte in weniger spezifischen Regeln zu überschreiben.

Beschreibung

Die counter-reset Eigenschaft kann sowohl reguläre als auch in unterstützenden Browsern umgekehrte Zähler erstellen. Sie können mehrere reguläre und umgekehrte Zähler erstellen, die jeweils durch ein Leerzeichen getrennt sind. Zähler können ein eigenständiger Name oder ein durch Leerzeichen getrennter Name-Wert-Paar sein.

Warnung: Es gibt einen Unterschied zwischen den Eigenschaften counter-reset und counter-set. Nachdem Sie einen Zähler mit counter-reset erstellt haben, können Sie seinen Wert mit der counter-set Eigenschaft anpassen. Dies ist kontraintuitiv, da die counter-reset Eigenschaft trotz ihres Namens zum Erstellen und Initialisieren von Zählern verwendet wird, während die counter-set Eigenschaft zum Zurücksetzen des Werts eines bestehenden Zählers verwendet wird.

Das Setzen von counter-increment: none auf einem Selektor mit höherer Spezifität überschreibt die Erstellung des benannten Zählers, der auf Selektoren mit geringerer Spezifität festgelegt ist.

Standardanfangswerte

Die Standardanfangswerte sowohl regulärer als auch umgekehrter Zähler machen es einfach, die beiden häufigsten Nummerierungsmuster zu implementieren: Zählung von eins bis zur Anzahl der Elemente und Zählung von der Anzahl der Elemente bis eins. Durch das Hinzufügen eines Zählwerts für einen benannten Zähler kann Ihr Zähler auf- oder abwärts zählen, beginnend bei einem ganzzahligen Wert.

Reguläre Zähler beginnen standardmäßig bei 0, wenn kein Rücksetzungswert angegeben ist. Standardmäßig erhöhen sich reguläre Zähler um eins, was mit der counter-increment Eigenschaft angepasst werden kann.

css
h1 {
  /* Create the counters "chapter" and "page" and set to initial default value.
     Create the counter "section" and set to "4". */
  counter-reset: chapter section 4 page;
}

Umgekehrte Zähler

Beim Erstellen umgekehrter Zähler ohne einen Wert beginnt der Zähler mit dem Wert, der der Anzahl der Elemente im Set entspricht, und zählt so herunter, dass das letzte Element im Set 1 ist. Standardmäßig dekrementieren umgekehrte Zähler um eins; dies kann auch mit der counter-increment Eigenschaft geändert werden.

css
h1 {
  /* Create reversed counters "chapter" and "section".
      Set "chapter" as the number of elements and "section" as "10".
      Create the counter "pages" with the initial default value. */
  counter-reset: reversed(chapter) reversed(section) 10 pages;
}

Eingebauter list-item Zähler

Geordnete Listen (<ol>) haben eingebaute list-item Zähler, die ihre Nummerierung steuern. Diese Zähler erhöhen oder verringern sich automatisch um eins mit jedem Listenelement. Die counter-reset Eigenschaft kann verwendet werden, um die list-item Zähler zurückzusetzen. Wie bei anderen Zählern können Sie den Standardinkrementwert der list-item Zähler mit der counter-increment Eigenschaft überschreiben.

Formale Definition

Anfangswertnone
Anwendbar aufalle Elemente
VererbtNein
Berechneter Wertwie angegeben
Animationstypby computed value type

Formale Syntax

counter-reset = 
[ <counter-name> <integer>? | <reversed-counter-name> <integer>? ]+ |
none

<reversed-counter-name> =
reversed( <counter-name> )

Beispiele

Überschreiben des list-item Zählers

In diesem Beispiel wird die counter-reset Eigenschaft verwendet, um einen Startwert für einen impliziten list-item Zähler festzulegen.

HTML

html
<ol>
  <li>First</li>
  <li>Second</li>
  <li>Third</li>
  <li>Fourth</li>
  <li>Fifth</li>
</ol>

CSS

Mit counter-reset setzen wir den impliziten list-item Zähler, um bei einem anderen Wert als dem Standardwert 1 zu beginnen:

css
ol {
  counter-reset: list-item 3;
}

Ergebnis

Mit counter-reset setzen wir den impliziten list-item Zähler, damit er bei jedem ol bei 3 zu zählen beginnt. Dann wäre das erste Element mit 4 nummeriert, das zweite mit 5 usw., ähnlich dem Effekt, als wenn man <ol start="4"> in HTML schreibt.

Verwenden eines umgekehrten Zählers

Im folgenden Beispiel haben wir einen umgekehrten Zähler namens 'priority' deklariert. Der Zähler wird verwendet, um fünf Aufgaben zu nummerieren.

html
<ul class="stack">
  <li>Task A</li>
  <li>Task B</li>
  <li>Task C</li>
  <li>Task D</li>
  <li>Task E</li>
</ul>
css
li::before {
  content: counter(priority) ". ";
  counter-increment: priority -1;
}

.stack {
  counter-reset: reversed(priority);
  list-style: none;
}

Im Ergebnis sind die Elemente in umgekehrter Reihenfolge von 5 bis 1 nummeriert. Beachten Sie, dass wir im Code keinen Anfangswert für den Zähler angegeben haben. Der Browser berechnet den Anfangswert automatisch zur Layout-Zeit unter Verwendung des Zähler-Inkrementwerts.

Spezifikationen

Specification
CSS Lists and Counters Module Level 3
# counter-reset

Browser-Kompatibilität

Siehe auch