Hallo alle,
ich bin gerade etwas erstaunt. Arg erstaunt! Mein eigentliches HTML war umfangreicher, hier ist die minimalistische Version:
<ol><li>Bananenli><livalue="7">Äpfelli><li>Birnenli>ol>
Diese Liste wird brav 1,7,8 durchnummeriert, aber jetzt füge ich eine counters()-Ausgabe hinzu:
li::after{content:' ('counters(list-item,'.')')';}
Erwartet:
1. Bananen (1)
7. Äpfel (7)
8. Birnen (8)
Vorgefunden (Edge Chromium v120)
1. Bananen (1)
7. Äpfel (1.7)
8. Birnen (1.8)
Das heißt: die Value-Eigenschaft hat nicht, wie die Counters- und HTML-Spec schreiben, einen counter-set: list-item 7
durchgeführt, sondern einen counter-reset
und einen geschachtelten Zähler erzeugt.
Das finde ich jetzt gruselig falsch. Für mein Minibeispiel ist's natürlich wurscht, aber wenn man real mit geschachtelten Zählern und dem value-Attribut arbeitet, führt das gefundene Verhalten zu blödsinniger Darstellung.
Als Workaround kann ich mit style="counter-set: list-item 7"
arbeiten. Dann ist das Ergebnis richtig. Aber das solle ja eigentlich nicht nötig sein.
Bevor ich bei Chromium einen Bug poste: Mache ich was falsch? Bringen andere Browser das auch? Ich habe jetzt nur Chromium parat.
Fiddle: https://jsfiddle.net/vcmh3pf7/1/
Rolf
sumpsi - posui - obstruxi