docusaurus-numbered-headings
Version:
A Docusaurus plugin that automatically adds numbered headings with support for ISO 2145 and USA Classic numbering conventions
74 lines (60 loc) • 1.6 kB
CSS
/* Per-document override: force USA Classic inside .numbered_headings_usa_classic */
/* Scoped rules win over the unscoped global rules by class specificity. */
.numbered_headings_usa_classic h2 {
counter-increment: h2counter;
counter-reset: h3counter;
}
.numbered_headings_usa_classic h2::before {
content: counter(h2counter, upper-roman) ". ";
}
.numbered_headings_usa_classic h3 {
counter-increment: h3counter;
counter-reset: h4counter;
}
.numbered_headings_usa_classic h3::before {
content: counter(h3counter, upper-alpha) ". ";
}
.numbered_headings_usa_classic h4 {
counter-increment: h4counter;
counter-reset: h5counter;
}
.numbered_headings_usa_classic h4::before {
content: counter(h4counter, decimal) ". ";
}
.numbered_headings_usa_classic h5 {
counter-increment: h5counter;
}
.numbered_headings_usa_classic h5::before {
content: counter(h5counter, lower-alpha) ". ";
}
/* TOC override via :has() — the right-rail TOC lives outside the wrapped body. */
:root:has(.numbered_headings_usa_classic) .table-of-contents > li::before {
content: counter(toc-h2, upper-roman) ". ";
}
:root:has(.numbered_headings_usa_classic)
.table-of-contents
> li
> ul
> li::before {
content: counter(toc-h3, upper-alpha) ". ";
}
:root:has(.numbered_headings_usa_classic)
.table-of-contents
> li
> ul
> li
> ul
> li::before {
content: counter(toc-h4, decimal) ". ";
}
:root:has(.numbered_headings_usa_classic)
.table-of-contents
> li
> ul
> li
> ul
> li
> ul
> li::before {
content: counter(toc-h5, lower-alpha) ". ";
}