セクション番号を "1.1.1" の形式にするCSSの手法がChromeで使えなくなった
Opened this issue · 0 comments
Vivliostyle Base Theme で、セクション番号は "1.1.1" の形式になるように設定されています:
themes/packages/@vivliostyle/theme-base/css/partial/section.css
Lines 16 to 20 in ebf926f
themes/packages/@vivliostyle/theme-base/css/partial/section.css
Lines 138 to 176 in ebf926f
このテーマを使ったHTML文書をVivliostyleを使わないで普通にChrome(126以降)で閲覧したとき、セクション番号が正しく表示されない不具合があります。FirefoxとSafariでは問題ありません。また、Chrome 125までは問題ありませんでした。
例:
https://raw.githack.com/MurakamiShinyu/wikipedia-sample/main/%E7%A5%9E%E8%A9%B1.html
これをChromeとSafariで開いたとき、セクション番号が正しく "1.4.3" のように表示されません。
ChromeとSafariの表示を比べたスクリーンショット:
CSS仕様が変更され、そのあと変更の取り消しが決まったのにChromeが変更を実装してしまった問題
私は最初Chrome (Chromium)のバグだと考えてChromium Issue Trackerに報告しました:
- Nested CSS counters do not work correctly
https://issues.chromium.org/issues/359623686
しかし、そのあと追加のコメントに書いたとおり、これはCSSのドラフト仕様の次の変更を反映したものであるということがわかりました:
-
https://www.w3.org/TR/css-lists-3/#changes-20200709
- Changed counter inheritance to take from the parent first, and only take from the sibling if it's a new counter. (Issue 5477)
しかしこの変更は問題があるということで取り消されることになりました:
w3c/csswg-drafts#5477 (comment)
- RESOLVED: Revert the previous resolution and the associated edits
それなのに、Chromiumはこの変更を実装してしまい、この問題が発生しています。
詳しくは、上記のChromium Issue TrackerのIssueのコメントや、上記CSS仕様のIssueのコメントをご覧ください。