counters()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Die counters()
CSS Funktion ermöglicht das Kombinieren von Markierungen beim Verschachteln von Zählern. Diese Funktion gibt einen String zurück, der die aktuellen Werte der benannten und verschachtelten Zähler, sofern vorhanden, mit dem angegebenen String verknüpft. Der dritte, optionale Parameter erlaubt die Definition des Listentyps.
Die counters()
-Funktion wird in der Regel innerhalb von Pseudo-Elementen durch die content
-Eigenschaft verwendet, kann theoretisch jedoch überall eingesetzt werden, wo ein <string>
-Wert unterstützt wird.
Die counters()
-Funktion hat zwei Formen: counters(<name>, <string>)
und counters(<name>, <string>, <style>)
. Der generierte Text ist der Wert aller Zähler mit dem angegebenen <name>
, von außen nach innen geordnet und durch den angegebenen <string>
getrennt. Die Zähler werden im <style>
-Format dargestellt, das angegeben ist, und standardmäßig auf decimal
gesetzt, wenn kein <style>
angegeben ist.
Probieren Sie es aus
Syntax
/* Simple usage - style defaults to decimal */
counters(counter-name, '.');
/* changing the counter display */
counters(counter-name, '-', upper-roman)
Ein Zähler hat für sich genommen keine sichtbare Wirkung. Die counters()
-Funktion (und die counter()
-Funktion) macht ihn nützlich, indem sie entwicklerdefinierte Inhalte zurückgibt.
Werte
Die counters()
-Funktion akzeptiert zwei oder drei Parameter. Der erste Parameter ist der <counter-name>
. Der zweite Parameter ist der Verknüpfungs-<string>
. Der optionale dritte Parameter ist der <counter-style>
.
<counter-name>
-
Ein
<custom-ident>
zur Identifizierung der Zähler, der derselbe groß-/kleinschreibungssensitive Name ist, der für diecounter-reset
- undcounter-increment
-Eigenschaften verwendet wird. Der Name darf nicht mit zwei Bindestrichen beginnen und kann nichtnone
,unset
,initial
oderinherit
sein. Alternativ können für Inline- und Einmalgebrauchs-Zähler diesymbols()
-Funktion anstelle eines benannten Zählers in Browsern, diesymbols()
unterstützen, verwendet werden. <string>
-
Beliebige Anzahl von Textzeichen. Nicht-lateinische Zeichen müssen mit ihren Unicode-Escape-Sequenzen kodiert werden: beispielsweise repräsentiert
\000A9
das Copyright-Symbol. <counter-style>
-
Ein Zählerstilname oder eine
symbols()
-Funktion. Der Zählerstilname kann ein einfach vorkonfigurierter Stil wie numerisch, alphabetisch oder symbolisch sein, ein komplizierter ausgeschriebener Stil wie ostasiatisch oder äthiopisch, oder ein anderer vorkonfigurierter Zählerstil. Wenn er weggelassen wird, wird der Zählerstil auf decimal gesetzt.
Der Rückgabewert ist ein String, der alle Werte aller Zähler im CSS-Zählersatz des Elements namens <counter-name>
im durch <counter-style>
(oder decimal, falls weggelassen) definierten Zählerstil enthält. Der Rückgabestring sortiert von außen nach innen und ist durch den angegebenen <string>
verbunden.
Hinweis:
Für Informationen über nicht verkettete Zähler siehe die counter()
-Funktion, die den <string>
als Parameter weglässt.
Formale Syntax
<counters()> =
counters( <counter-name> , <string> , <counter-style>? )
<counter-style> =
<counter-style-name> |
<symbols()>
<symbols()> =
symbols( <symbols-type>? [ <string> | <image> ]+ )
<symbols-type> =
cyclic |
numeric |
alphabetic |
symbolic |
fixed
<image> =
<url> |
<gradient>
<url> =
<url()> |
<src()>
<url()> =
url( <string> <url-modifier>* ) |
<url-token>
<src()> =
src( <string> <url-modifier>* )
Beispiele
Vergleich des Standardzählwerts mit römischen Zahlen in Großbuchstaben
Dieses Beispiel enthält zwei counters()
-Funktionen: eine mit <counter-style>
gesetzt und die andere standardmäßig auf decimal
.
HTML
<ol>
<li>
<ol>
<li></li>
<li></li>
<li></li>
</ol>
</li>
<li></li>
<li></li>
<li>
<ol>
<li></li>
<li>
<ol>
<li></li>
<li></li>
<li></li>
</ol>
</li>
</ol>
</li>
</ol>
CSS
ol {
counter-reset: listCounter;
}
li {
counter-increment: listCounter;
}
li::marker {
content:
counters(listCounter, ".", upper-roman) ") ";
}
li::before {
content:
counters(listCounter, ".") " == "
counters(listCounter, ".", lower-roman);
}
Ergebnis
Vergleich des Zählwerts mit führender Null mit Kleinbuchstaben
Dieses Beispiel enthält drei counters()
-Funktionen, jeweils mit unterschiedlichen <string>
- und <counter-style>
-Werten.
HTML
<ol>
<li>
<ol>
<li></li>
<li></li>
<li></li>
</ol>
</li>
<li></li>
<li></li>
<li>
<ol>
<li></li>
<li>
<ol>
<li></li>
<li></li>
<li></li>
</ol>
</li>
</ol>
</li>
</ol>
CSS
ol {
counter-reset: count;
}
li {
counter-increment: count;
}
li::marker {
content:
counters(count, "-", decimal-leading-zero) ") ";
}
li::before {
content:
counters(count, "~", upper-alpha) " == "
counters(count, "*", lower-alpha);
}
Ergebnis
Spezifikationen
Specification |
---|
CSS Lists and Counters Module Level 3 # counter-functions |
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
- Verwendung von CSS-Zählern
counter-set
Eigenschaftcounter-reset
Eigenschaftcounter-increment
Eigenschaft@counter-style
Regel- CSS
counter()
Funktion ::marker
Pseudo-Element- CSS-Listen und -Zähler Modul
- CSS-Zählerstile Modul
- CSS-generierte Inhalte Modul