Compare commits

...

3 commits

Author SHA1 Message Date
Julie Blanc
8255f08762 layout-3 w/ Akkurat 2026-01-20 22:37:15 +01:00
Julie Blanc
a4c3390b99 delete CSS counters 2026-01-20 21:31:42 +01:00
Julie Blanc
4a95558237 counters js 2026-01-20 21:30:25 +01:00
12 changed files with 304 additions and 356 deletions

View file

@ -1,88 +1,51 @@
// @page {
// @footnote {
// float: bottom;
// footnote-policy: auto;
// }
// }
@page {
@footnote {
float: bottom;
footnote-policy: auto;
}
}
// .pagedjs_footnote_content{
// padding-top: calc(var(--baseline)*1);
// }
.pagedjs_footnote_content{
padding-top: calc(var(--baseline)*1);
}
// .inline-note {
// float: footnote;
// footnote-policy: auto;
// font-size: 9px;
// line-height: calc(var(--baseline)*0.8);
// padding-left: var(--indent);
// position: relative;
// // font-weight: 100;
// &::marker{
// display: none;
// content: "";
// }
// }
// [data-counter-note]{
// &::before{
// content: attr(data-counter-note) ".";
// position: absolute;
// left: 0px;
// }
// }
// [data-footnote-call]{
// font-size: 9px;
// }
.footnote-ref{
font-family: var(--font-title);
line-height: 0;
.inline-note {
float: footnote;
footnote-policy: auto;
font-size: var(--fs-small);
font-weight: 500;
}
#footnotes{
break-before: right;
.title-part{
font-family: var(--font-title);
font-size: 1.1rem;
font-weight: 500;
line-height: calc(var(--baseline)*1.2);
margin-top: calc(var(--baseline)*2);
padding-bottom: calc(var(--baseline)*1);
padding-right: 2ch;
padding-left: 2ch;
text-align: center;
text-wrap: balance;
&::before{
content: attr(data-part-number) ". "
}
}
li{
font-size: var(--fs-small);
// &::marker{
// font-family: var(--font-title);
// font-weight: 500;
// }
}
.footnote-back{
display: none;
}
line-height: calc(var(--baseline)*0.8);
padding-left: var(--indent);
position: relative;
font-weight: 600;
&::marker{
display: none;
content: "";
}
}
[data-id="footnotes"][data-split-from] > :first-child {
margin-top: 0;
[data-counter-note]{
&::before{
content: attr(data-counter-note) ".";
position: absolute;
left: 0px;
}
}
.inline-note::after{
font-family: var(--font);
font-size: var(--fs-small);
line-height: 0;
position: relative;
top: -3px;
font-variant-position: normal!important;
}
blockquote .inline-note{
font-variant-position: normal!important;
}

View file

@ -1,6 +1,6 @@
@media print {
@page {
size: 134mm 205mm;
size: 176mm 240mm;
// size: 150mm 220mm;
margin-top: 36px;
margin-bottom: 20mm;

View file

@ -37,12 +37,14 @@ ol[type="1"] + p{
blockquote{
font-family: var(--font-serif);
padding-left: calc(var(--indent)*1);
font-size: var(--fs-small);
// line-height: calc(var(--baseline)*0.75);
padding-right: calc(var(--indent)*1);
// font-size: var(--fs-small);
margin-top: calc(var(--baseline)*0.5);
margin-bottom: calc(var(--baseline)*0.5);
font-size: 12px;
color: #343434;
}
@ -55,8 +57,12 @@ blockquote + ol + p{
.these{
font-family: var(--font-title);
// color: red;
// font-family: var(--font-title);
margin-bottom: calc(var(--baseline)*1);
border-left: 4px solid #efefef;
box-decoration-break: clone;
padding-left: calc(var(--indent)*0.5);
}
@ -66,20 +72,31 @@ ol[type="1"]{
break-after: avoid;
position: absolute;
left: calc(var(--indent)*-1.5 - 0.5ch);
left: 0px;
&::before{
display: flex;
gap: 0.25ch;
&::after{
content: attr(start);
// font-family: var(--font-title);
// font-weight: 500;
font-size: 0.6rem;
font-size: var(--fs-small);
color: #999;
display: block;
height: var(--baseline);
// display: block;
// height: var(--baseline);
padding-right: 1ch;
border-right: 1px solid #efefef;
// padding-right: 1ch;
// border-right: 1px solid #efefef;
}
li::before{
font-size: var(--fs-small);
content: "";
color: #d7d7d7;
position: relative;
top: -1px;
}
@ -87,48 +104,3 @@ ol[type="1"]{
}
// GRADATIONS
/*
ol[type="1"]{
list-style-type: none;
position: relative;
break-after: avoid;
position: absolute;
left: calc(var(--indent)*-1.5 - 0.5ch);
&::before{
content: attr(start);
font-family: var(--font-title);
font-weight: 500;
font-size: 0.6rem;
color: #999;
display: block;
padding: 0px 2px;
// border: 1px solid #efefef;
min-width: 20px;
justify-content: center;
}
}
.pagedjs_page_content::before{
--color: #efefef;
--size: 20px;
content: "";
display: block;
height: 100%;
width: var(--size);
position: absolute;
left: calc(var(--indent)*-1 - var(--size));
background: linear-gradient(transparent 0%, transparent calc(var(--baseline) - 1px), var(--color) calc(var(--baseline) - 1px), var(--color) var(--baseline)), transparent;
background-size: 100% var(--baseline);
background-repeat: repeat-y;
}
*/

View file

@ -1,58 +0,0 @@
#section__content{
counter-reset: h1;
h1{
counter-increment: h1 1;
counter-reset: h2;
}
h1::before{
content: counter(h1, upper-alpha);
}
h2{
counter-increment: h2 1;
counter-reset: h3;
}
h2::before{
content: counter(h2, upper-roman);
}
h3{
counter-increment: h3 1;
counter-reset: h4;
}
h3::before{
content: counter(h3);
}
h4{
counter-increment: h4 1;
counter-reset: h5;
}
h4::before{
content: counter(h4, lower-alpha) ". ";
}
h5{
counter-increment: h5 1;
counter-reset: h6;
}
h5::before{
content: counter(h5, lower-alpha) counter(h5, lower-alpha) ". ";
}
h6{
counter-increment: h6 1;
}
h6::before{
content: "(" counter(h6) "). ";
}
}

View file

@ -1,5 +1,18 @@
#section__content{
margin-left: 28mm;
h1, h2, h3 {
&::before{
content: attr(data-counter);
}
}
h4, h5, h6{
&::before{
content: attr(data-counter) ". ";
}
}
h1, h2, h3 , h4{
@ -57,10 +70,13 @@
margin-top: calc(var(--baseline)*1 + 6px);
padding-bottom: calc(var(--baseline)*1);
padding-right: 2ch;
padding-left: calc(var(--indent)*2);
&::before{
display: block;
font-size: var(--fs-num);
padding-left: var(--indent);
position: absolute;
left: 0;
// display: block;
// font-size: var(--fs-num);
// padding-left: var(--indent);
}
}
@ -77,12 +93,11 @@
position: relative;
margin-top: calc(var(--baseline)*1 + 4px);
padding-bottom: calc(var(--baseline)*0.75);
padding-left: calc(var(--indent)*2);
&::before{
display: block;
font-size: var(--fs-num);
padding-left: var(--indent);
// position: absolute;
// left: 0;
position: absolute;
left: 0;
}
}
@ -91,13 +106,19 @@
font-weight: 500;
font-size: 0.9rem;
line-height: calc(var(--baseline)*1);
padding-left: calc(var(--indent)*1);
padding-right: calc(var(--indent)*2);
position: relative;
margin-top: calc(var(--baseline)*1 + 4px);
padding-bottom: calc(var(--baseline)*0.75);
text-decoration: underline 1px #cfcfcf;
text-underline-offset: 3px;
padding-left: calc(var(--indent)*2);
&::before{
// position: absolute;
// left: 0;
}
}
@ -106,7 +127,7 @@
font-weight: 500;
font-size: 0.8rem;
line-height: calc(var(--baseline)*1);
padding-left: calc(var(--indent)*1);
padding-left: calc(var(--indent)*2);
// padding-right: calc(var(--indent)*2);
position: relative;
margin-top: calc(var(--baseline)*1 + 4px);
@ -133,19 +154,32 @@
h1{
font-family: var(--font-title);
font-size: 1.4rem;
font-size: 1.6rem;
font-weight: 500;
text-transform: uppercase;
line-height: calc(var(--baseline)*1.4);
text-align: center;
line-height: calc(var(--baseline)*1.6);
// text-align: center;
position: relative;
margin-top: calc(var(--baseline)*2 - 3px);
padding-bottom: calc(var(--baseline)*1);
padding-left: 1ch;
padding-left: calc(var(--indent)*2);
padding-right: 1ch;
&::before{
display: block;
font-size: var(--fs-num);
// font-size: var(--fs-num);
// width: 2ch;
// height: 2ch;
// border: 1px solid currentColor;
// border-radius: 50%;
// display: flex;
// align-items: center;
// justify-content: center;
position: absolute;
left: 0;
width: calc(var(--indent)*2 - 0.5ch);
// border-bottom: 2px solid #cfcfcf;
// top: 3px;
}
}

View file

@ -1,9 +1,10 @@
:root{
--font: 'Edgar', sans-serif;
--font: 'Akkurat Std', sans-serif;
--font-serif: 'Edgar', sans-serif;
--font-title: 'Allium Rounded', sans-serif;
--font-sans: 'Allium Rounded', sans-serif;
--font-size: 11px;
--fs-small: 9.5px;
--fs-small: 8.5px;
--fs-num: 14px;
--baseline: 16px;

View file

@ -1,10 +1,11 @@
@charset "UTF-8";
:root {
--font: "Edgar", sans-serif;
--font: "Akkurat Std", sans-serif;
--font-serif: "Edgar", sans-serif;
--font-title: "Allium Rounded", sans-serif;
--font-sans: "Allium Rounded", sans-serif;
--font-size: 11px;
--fs-small: 9.5px;
--fs-small: 8.5px;
--fs-num: 14px;
--baseline: 16px;
--indent: 26px;
@ -32,7 +33,7 @@ body {
@media print {
@page {
size: 134mm 205mm;
size: 176mm 240mm;
margin-top: 36px;
margin-bottom: 20mm;
bleed: 6mm;
@ -213,10 +214,13 @@ ol[type="1"] + p {
}
blockquote {
font-family: var(--font-serif);
padding-left: calc(var(--indent) * 1);
font-size: var(--fs-small);
padding-right: calc(var(--indent) * 1);
margin-top: calc(var(--baseline) * 0.5);
margin-bottom: calc(var(--baseline) * 0.5);
font-size: 12px;
color: #343434;
}
.these + ol + p,
@ -225,8 +229,11 @@ blockquote + ol + p {
}
.these {
font-family: var(--font-title);
margin-bottom: calc(var(--baseline) * 1);
border-left: 4px solid #efefef;
-webkit-box-decoration-break: clone;
box-decoration-break: clone;
padding-left: calc(var(--indent) * 0.5);
}
ol[type="1"] {
@ -235,104 +242,32 @@ ol[type="1"] {
-moz-column-break-after: avoid;
break-after: avoid;
position: absolute;
left: calc(var(--indent) * -1.5 - 0.5ch);
left: 0px;
display: flex;
gap: 0.25ch;
}
ol[type="1"]::before {
ol[type="1"]::after {
content: attr(start);
font-size: 0.6rem;
font-size: var(--fs-small);
color: #999;
display: block;
height: var(--baseline);
padding-right: 1ch;
border-right: 1px solid #efefef;
}
ol[type="1"] li::before {
font-size: var(--fs-small);
content: "¶";
color: #d7d7d7;
position: relative;
top: -1px;
}
/*
ol[type="1"]{
list-style-type: none;
position: relative;
break-after: avoid;
position: absolute;
left: calc(var(--indent)*-1.5 - 0.5ch);
&::before{
content: attr(start);
font-family: var(--font-title);
font-weight: 500;
font-size: 0.6rem;
color: #999;
display: block;
padding: 0px 2px;
// border: 1px solid #efefef;
min-width: 20px;
justify-content: center;
}
}
.pagedjs_page_content::before{
--color: #efefef;
--size: 20px;
content: "";
display: block;
height: 100%;
width: var(--size);
position: absolute;
left: calc(var(--indent)*-1 - var(--size));
background: linear-gradient(transparent 0%, transparent calc(var(--baseline) - 1px), var(--color) calc(var(--baseline) - 1px), var(--color) var(--baseline)), transparent;
background-size: 100% var(--baseline);
background-repeat: repeat-y;
}
*/
#section__content {
counter-reset: h1;
margin-left: 28mm;
}
#section__content h1 {
counter-increment: h1 1;
counter-reset: h2;
#section__content h1::before, #section__content h2::before, #section__content h3::before {
content: attr(data-counter);
}
#section__content h1::before {
content: counter(h1, upper-alpha);
#section__content h4::before, #section__content h5::before, #section__content h6::before {
content: attr(data-counter) ". ";
}
#section__content h2 {
counter-increment: h2 1;
counter-reset: h3;
}
#section__content h2::before {
content: counter(h2, upper-roman);
}
#section__content h3 {
counter-increment: h3 1;
counter-reset: h4;
}
#section__content h3::before {
content: counter(h3);
}
#section__content h4 {
counter-increment: h4 1;
counter-reset: h5;
}
#section__content h4::before {
content: counter(h4, lower-alpha) ". ";
}
#section__content h5 {
counter-increment: h5 1;
counter-reset: h6;
}
#section__content h5::before {
content: counter(h5, lower-alpha) counter(h5, lower-alpha) ". ";
}
#section__content h6 {
counter-increment: h6 1;
}
#section__content h6::before {
content: "(" counter(h6) "). ";
}
#section__content h1, #section__content h2, #section__content h3, #section__content h4 {
-moz-column-break-inside: avoid;
break-inside: avoid;
@ -379,11 +314,11 @@ ol[type="1"]{
margin-top: calc(var(--baseline) * 1 + 6px);
padding-bottom: calc(var(--baseline) * 1);
padding-right: 2ch;
padding-left: calc(var(--indent) * 2);
}
#section__content h2::before {
display: block;
font-size: var(--fs-num);
padding-left: var(--indent);
position: absolute;
left: 0;
}
#section__content h3 {
font-family: var(--font-title);
@ -394,18 +329,17 @@ ol[type="1"]{
position: relative;
margin-top: calc(var(--baseline) * 1 + 4px);
padding-bottom: calc(var(--baseline) * 0.75);
padding-left: calc(var(--indent) * 2);
}
#section__content h3::before {
display: block;
font-size: var(--fs-num);
padding-left: var(--indent);
position: absolute;
left: 0;
}
#section__content h4 {
font-family: var(--font-title);
font-weight: 500;
font-size: 0.9rem;
line-height: calc(var(--baseline) * 1);
padding-left: calc(var(--indent) * 1);
padding-right: calc(var(--indent) * 2);
position: relative;
margin-top: calc(var(--baseline) * 1 + 4px);
@ -413,13 +347,14 @@ ol[type="1"]{
-webkit-text-decoration: underline 1px #cfcfcf;
text-decoration: underline 1px #cfcfcf;
text-underline-offset: 3px;
padding-left: calc(var(--indent) * 2);
}
#section__content h5 {
font-family: var(--font-title);
font-weight: 500;
font-size: 0.8rem;
line-height: calc(var(--baseline) * 1);
padding-left: calc(var(--indent) * 1);
padding-left: calc(var(--indent) * 2);
position: relative;
margin-top: calc(var(--baseline) * 1 + 4px);
padding-bottom: calc(var(--baseline) * 0.25);
@ -439,61 +374,67 @@ ol[type="1"]{
h1 {
font-family: var(--font-title);
font-size: 1.4rem;
font-size: 1.6rem;
font-weight: 500;
text-transform: uppercase;
line-height: calc(var(--baseline) * 1.4);
text-align: center;
line-height: calc(var(--baseline) * 1.6);
position: relative;
margin-top: calc(var(--baseline) * 2 - 3px);
padding-bottom: calc(var(--baseline) * 1);
padding-left: 1ch;
padding-left: calc(var(--indent) * 2);
padding-right: 1ch;
}
h1::before {
display: block;
font-size: var(--fs-num);
position: absolute;
left: 0;
width: calc(var(--indent) * 2 - 0.5ch);
}
section h1:first-of-type {
margin-top: 3px !important;
}
.footnote-ref {
font-family: var(--font-title);
line-height: 0;
font-size: var(--fs-small);
font-weight: 500;
@page {
@footnote {
float: bottom;
footnote-policy: auto;
}
}
.pagedjs_footnote_content {
padding-top: calc(var(--baseline) * 1);
}
#footnotes {
-moz-column-break-before: right;
break-before: right;
}
#footnotes .title-part {
font-family: var(--font-title);
font-size: 1.1rem;
font-weight: 500;
line-height: calc(var(--baseline) * 1.2);
margin-top: calc(var(--baseline) * 2);
padding-bottom: calc(var(--baseline) * 1);
padding-right: 2ch;
padding-left: 2ch;
text-align: center;
text-wrap: balance;
}
#footnotes .title-part::before {
content: attr(data-part-number) ". ";
}
#footnotes li {
.inline-note {
float: footnote;
footnote-policy: auto;
font-size: var(--fs-small);
line-height: calc(var(--baseline) * 0.8);
padding-left: var(--indent);
position: relative;
font-weight: 600;
}
#footnotes .footnote-back {
.inline-note::marker {
display: none;
content: "";
}
[data-id=footnotes][data-split-from] > :first-child {
margin-top: 0;
[data-counter-note]::before {
content: attr(data-counter-note) ".";
position: absolute;
left: 0px;
}
.inline-note::after {
font-family: var(--font);
font-size: var(--fs-small);
line-height: 0;
position: relative;
top: -3px;
font-variant-position: normal !important;
}
blockquote .inline-note {
font-variant-position: normal !important;
}
#section__list-of-abbr {

View file

@ -1 +1 @@
{"version":3,"sources":["style.css","modules/_var.scss","modules/_init.scss","modules/_layout.scss","modules/_text.scss","modules/_titles-counters.scss","modules/_titles.scss","modules/_footnotes.scss","modules/_list-of-abbr.scss"],"names":[],"mappings":"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","file":"style.css"}
{"version":3,"sources":["style.css","modules/_var.scss","modules/_init.scss","modules/_layout.scss","modules/_text.scss","modules/_titles.scss","modules/_footnotes.scss","modules/_list-of-abbr.scss"],"names":[],"mappings":"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","file":"style.css"}

View file

@ -3,7 +3,6 @@
@import 'modules/init';
@import 'modules/layout';
@import 'modules/text';
@import 'modules/titles-counters';
@import 'modules/titles';
@import 'modules/footnotes';
@import 'modules/list-of-abbr';

View file

@ -1,5 +1,5 @@
{
"plugins": ["baseline","grid","marginBox","imposition","spread","previewPage","reloadInPlace","fullPage"],
"plugins": ["baseline","grid","marginBox","imposition","spread","previewPage","reloadInPlace","inlineNotes"],
"pluginsParameters":{},
"css": [
"css/style.css"
@ -11,7 +11,7 @@
}
},
"hook": [
"/js/sectionedFootnotes.js"
"/js/counters.js"
]
}

View file

@ -9,9 +9,11 @@
<link rel="stylesheet" href="/fonts/Edgar/stylesheet.css">
<link rel="stylesheet" href="/fonts/Heliotrope/stylesheet.css">
<link rel="stylesheet" href="/fonts/HeliotropeCaps/stylesheet.css">
<link rel="stylesheet" href="/fonts/Prensa/stylesheet.css">
<link rel="stylesheet" href="/fonts/AlliumRounded/stylesheet.css">
<link rel="stylesheet" href="/fonts/HeliotropeCaps/stylesheet.css">
<link rel="stylesheet" href="/fonts/Prensa/stylesheet.css">
<link rel="stylesheet" href="/fonts/AlliumRounded/stylesheet.css">
<link rel="stylesheet" href="/fonts/Akkurat/stylesheet.css">
</head>
<body>

94
js/counters.js Normal file
View file

@ -0,0 +1,94 @@
import { Handler } from '/csspageweaver/lib/paged.esm.js';
export default class counters extends Handler {
constructor(chunker, polisher, caller) {
super(chunker, polisher, caller);
}
// Convertir en upper-alpha (A, B, C...)
toUpperAlpha(num) {
return String.fromCharCode(64 + num);
}
// Convertir en lower-alpha (a, b, c...)
toLowerAlpha(num) {
return String.fromCharCode(96 + num);
}
// Convertir en upper-roman (I, II, III...)
toUpperRoman(num) {
const romanNumerals = [
['M', 1000], ['CM', 900], ['D', 500], ['CD', 400],
['C', 100], ['XC', 90], ['L', 50], ['XL', 40],
['X', 10], ['IX', 9], ['V', 5], ['IV', 4], ['I', 1]
];
let result = '';
for (const [letter, value] of romanNumerals) {
while (num >= value) {
result += letter;
num -= value;
}
}
return result;
}
beforeParsed(content) {
const sectionContent = content.querySelector('#section__content');
if (!sectionContent) return;
// Compteurs
let h1Count = 0;
let h2Count = 0;
let h3Count = 0;
let h4Count = 0;
let h5Count = 0;
let h6Count = 0;
// Parcourir tous les éléments dans l'ordre du document
const allElements = sectionContent.querySelectorAll('h1, h2, h3, h4, h5, h6');
allElements.forEach(el => {
const tagName = el.tagName.toLowerCase();
switch (tagName) {
case 'h1':
h1Count++;
h2Count = 0; // reset h2
el.setAttribute('data-counter', this.toUpperAlpha(h1Count));
break;
case 'h2':
h2Count++;
h3Count = 0; // reset h3
el.setAttribute('data-counter', this.toUpperRoman(h2Count));
break;
case 'h3':
h3Count++;
h4Count = 0; // reset h4
el.setAttribute('data-counter', h3Count.toString());
break;
case 'h4':
h4Count++;
h5Count = 0; // reset h5
el.setAttribute('data-counter', this.toLowerAlpha(h4Count));
break;
case 'h5':
h5Count++;
h6Count = 0; // reset h6
const letter = this.toLowerAlpha(h5Count);
el.setAttribute('data-counter', letter + letter);
break;
case 'h6':
h6Count++;
el.setAttribute('data-counter', '(' + h6Count + ')');
break;
}
});
}
}