Created
March 9, 2024 11:57
-
-
Save GJCav/5e38bff73f366734bcbd398b80ecaafa to your computer and use it in GitHub Desktop.
Typora Theme : Auto numbering headers
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| /* page break */ | |
| .new-page { | |
| page-break-before: always; | |
| } | |
| @media print, (overflow-block: paged) or (overflow-block: optional-paged) { | |
| /* Move top-level headings to a new page on the right-hand side: */ | |
| h1 { | |
| page-break-before: right; /* CSS 2 */ | |
| break-before: recto; /* CSS 3+, | |
| also works for languages written and paginated right-to-left */ | |
| } | |
| /* Override the previous ruleset for the very first heading: */ | |
| h1:first-of-type, | |
| section > h1:first-child{ | |
| page-break-before: avoid; /* CSS 2 */ | |
| break-before: avoid; /* CSS 3+ */ | |
| } | |
| /* Force second-level headings to begin in a new column or | |
| possiblyon a new page if it was in the last of multiple columns otherwise: */ | |
| h2 | |
| { | |
| break-before: column; | |
| } | |
| /* Headings should not be the last paragraph on a page: */ | |
| h1, h2, h3, h4, h5, h6 | |
| { | |
| page-break-after: avoid; | |
| } | |
| /* Consecutive headings with deepening level should not be split across pages: */ | |
| h1+h2, h2+h3, h3+h4, h4+h5, h5+h6 | |
| { | |
| page-break-before: avoid; | |
| } | |
| } | |
| /* switch to the article top side bar */ | |
| .rside { | |
| display: block; | |
| position: fixed; | |
| z-index: 100; | |
| right: 0; | |
| bottom: 20%; | |
| width: 50px; | |
| height: 50px; | |
| border: 1px solid lightgrey; | |
| border-radius: 5px; | |
| text-align: center; | |
| font-size: 25px; | |
| text-decoration: none; | |
| } | |
| /* Hierarchical list */ | |
| ol ol{ | |
| list-style-type: lower-alpha; | |
| } | |
| ol ol ol{ | |
| list-style-type: lower-roman; | |
| } | |
| ol ol ol ol { | |
| list-style-type: lower-greek; | |
| } | |
| ul ul { | |
| list-style-type: circle; | |
| } | |
| ul ul ul{ | |
| list-style-type: square; | |
| } | |
| /* costome quoteblock */ | |
| blockquote{ | |
| color: black; | |
| font-style: normal; | |
| } | |
| /* Add title numbering */ | |
| /** initialize css counter */ | |
| #write { | |
| counter-reset: h1 | |
| } | |
| h2 { | |
| counter-reset: h3 | |
| } | |
| h3 { | |
| counter-reset: h4 | |
| } | |
| h4 { | |
| counter-reset: h5 | |
| } | |
| h5 { | |
| counter-reset: h6 | |
| } | |
| /** put counter result into headings */ | |
| #write h2:before { | |
| counter-increment: h2; | |
| content: counter(h2) " " | |
| } | |
| #write h3:before, | |
| h3.md-focus.md-heading:before /** override the default style for focused headings */ { | |
| counter-increment: h3; | |
| content: counter(h2) "." counter(h3) " " | |
| } | |
| #write h4:before, | |
| h4.md-focus.md-heading:before { | |
| counter-increment: h4; | |
| content: counter(h2) "." counter(h3) "." counter(h4) " " | |
| } | |
| #write h5:before, | |
| h5.md-focus.md-heading:before { | |
| counter-increment: h5; | |
| content: counter(h2) "." counter(h3) "." counter(h4) "." counter(h5) " " | |
| } | |
| #write h6:before, | |
| h6.md-focus.md-heading:before { | |
| counter-increment: h6; | |
| content: counter(h2) "." counter(h3) "." counter(h4) "." counter(h5) "." counter(h6) " " | |
| } | |
| /** override the default style for focused headings */ | |
| #write>h3.md-focus:before, | |
| #write>h4.md-focus:before, | |
| #write>h5.md-focus:before, | |
| #write>h6.md-focus:before, | |
| h3.md-focus:before, | |
| h4.md-focus:before, | |
| h5.md-focus:before, | |
| h6.md-focus:before { | |
| color: inherit; | |
| border: inherit; | |
| border-radius: inherit; | |
| position: inherit; | |
| left:initial; | |
| float: none; | |
| top:initial; | |
| font-size: inherit; | |
| padding-left: inherit; | |
| padding-right: inherit; | |
| vertical-align: inherit; | |
| font-weight: inherit; | |
| line-height: inherit; | |
| } | |
| /* Add auto numbering in [toc] */ | |
| /************************************** | |
| * Header Counters in TOC | |
| **************************************/ | |
| /* No link underlines in TOC */ | |
| .md-toc-inner { | |
| text-decoration: none; | |
| } | |
| .md-toc-content { | |
| counter-reset: h1toc | |
| } | |
| .md-toc-h1 { | |
| margin-left: 0; | |
| font-size: 1.5rem; | |
| counter-reset: h2toc | |
| } | |
| .md-toc-h2 { | |
| font-size: 1.1rem; | |
| margin-left: 2rem; | |
| counter-reset: h3toc | |
| } | |
| .md-toc-h3 { | |
| margin-left: 3rem; | |
| font-size: .9rem; | |
| counter-reset: h4toc | |
| } | |
| .md-toc-h4 { | |
| margin-left: 4rem; | |
| font-size: .85rem; | |
| counter-reset: h5toc | |
| } | |
| .md-toc-h5 { | |
| margin-left: 5rem; | |
| font-size: .8rem; | |
| counter-reset: h6toc | |
| } | |
| .md-toc-h6 { | |
| margin-left: 6rem; | |
| font-size: .75rem; | |
| } | |
| /* I dont want to number first title | |
| .md-toc-h1:before { | |
| color: black; | |
| counter-increment: h1toc; | |
| content: counter(h1toc) ". " | |
| } | |
| */ | |
| .md-toc-h1 .md-toc-inner { | |
| margin-left: 0; | |
| } | |
| .md-toc-h2:before { | |
| color: black; | |
| counter-increment: h2toc; | |
| content: counter(h2toc) " " | |
| } | |
| .md-toc-h2 .md-toc-inner { | |
| margin-left: 0; | |
| } | |
| .md-toc-h3:before { | |
| color: black; | |
| counter-increment: h3toc; | |
| content: counter(h2toc) ". " counter(h3toc) " " | |
| } | |
| .md-toc-h3 .md-toc-inner { | |
| margin-left: 0; | |
| } | |
| .md-toc-h4:before { | |
| color: black; | |
| counter-increment: h4toc; | |
| content: counter(h2toc) ". " counter(h3toc) ". " counter(h4toc) " " | |
| } | |
| .md-toc-h4 .md-toc-inner { | |
| margin-left: 0; | |
| } | |
| .md-toc-h5:before { | |
| color: black; | |
| counter-increment: h5toc; | |
| content: counter(h2toc) ". " counter(h3toc) ". " counter(h4toc) ". " counter(h5toc) " " | |
| } | |
| .md-toc-h5 .md-toc-inner { | |
| margin-left: 0; | |
| } | |
| .md-toc-h6:before { | |
| color: black; | |
| counter-increment: h6toc; | |
| content: counter(h2toc) ". " counter(h3toc) ". " counter(h4toc) ". " counter(h5toc) ". " counter(h6toc) " " | |
| } | |
| .md-toc-h6 .md-toc-inner { | |
| margin-left: 0; | |
| } | |
| /************************************** | |
| * Header Counters in Content | |
| **************************************/ | |
| /** initialize css counter */ | |
| #write { | |
| counter-reset: h1 | |
| } | |
| h1 { | |
| counter-reset: h2 | |
| } | |
| h2 { | |
| counter-reset: h3 | |
| } | |
| h3 { | |
| counter-reset: h4 | |
| } | |
| h4 { | |
| counter-reset: h5 | |
| } | |
| h5 { | |
| counter-reset: h6 | |
| } | |
| /** put counter result into headings */ | |
| /* I dont want this | |
| #write h1:before { | |
| counter-increment: h1; | |
| content: counter(h1) ". " | |
| } | |
| */ | |
| #write h2:before { | |
| counter-increment: h2; | |
| content: counter(h2) ". " | |
| } | |
| #write h3:before, h3.md-focus.md-heading:before { /*override the default style for focused headings */ | |
| counter-increment: h3; | |
| content: counter(h2) "." counter(h3) " " | |
| } | |
| #write h4:before, h4.md-focus.md-heading:before { | |
| counter-increment: h4; | |
| content: counter(h2) "." counter(h3) "." counter(h4) " " | |
| } | |
| #write h5:before, h5.md-focus.md-heading:before { | |
| counter-increment: h5; | |
| content: counter(h2) "." counter(h3) "." counter(h4) "." counter(h5) " " | |
| } | |
| #write h6:before, h6.md-focus.md-heading:before { | |
| counter-increment: h6; | |
| content: counter(h2) "." counter(h3) "." counter(h4) "." counter(h5) "." counter(h6) " " | |
| } | |
| /** override the default style for focused headings */ | |
| #write>h3.md-focus:before, #write>h4.md-focus:before, #write>h5.md-focus:before, #write>h6.md-focus:before, h3.md-focus:before, h4.md-focus:before, h5.md-focus:before, h6.md-focus:before { | |
| color: inherit; | |
| border: inherit; | |
| border-radius: inherit; | |
| position: inherit; | |
| left: initial; | |
| float: none; | |
| top: initial; | |
| font-size: inherit; | |
| padding-left: inherit; | |
| padding-right: inherit; | |
| vertical-align: inherit; | |
| font-weight: inherit; | |
| line-height: inherit; | |
| } | |
| /* Add auto numbering in sidbar */ | |
| .sidebar-content { | |
| counter-reset: h1 | |
| } | |
| .outline-h1 { | |
| counter-reset: h2 | |
| } | |
| .outline-h2 { | |
| counter-reset: h3 | |
| } | |
| .outline-h3 { | |
| counter-reset: h4 | |
| } | |
| .outline-h4 { | |
| counter-reset: h5 | |
| } | |
| .outline-h5 { | |
| counter-reset: h6 | |
| } | |
| /* | |
| .outline-h1>.outline-item>.outline-label:before { | |
| counter-increment: h1; | |
| content: counter(h1) ". " | |
| } | |
| */ | |
| .outline-h2>.outline-item>.outline-label:before { | |
| counter-increment: h2; | |
| content: counter(h2) " " | |
| } | |
| .outline-h3>.outline-item>.outline-label:before { | |
| counter-increment: h3; | |
| content: counter(h2) "." counter(h3) " " | |
| } | |
| .outline-h4>.outline-item>.outline-label:before { | |
| counter-increment: h4; | |
| content: counter(h2) "." counter(h3) "." counter(h4) " " | |
| } | |
| .outline-h5>.outline-item>.outline-label:before { | |
| counter-increment: h5; | |
| content: counter(h2) "." counter(h3) "." counter(h4) "." counter(h5) " " | |
| } | |
| .outline-h6>.outline-item>.outline-label:before { | |
| counter-increment: h6; | |
| content: counter(h2) "." counter(h3) "." counter(h4) "." counter(h5) "." counter(h6) " " | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment