mobile calendrier event display fix; Hyphenation words with dash fix

This commit is contained in:
2026-10-20 16:27:22 +02:00
parent 0637c0f90d
commit 48e9bf856c
4 changed files with 74 additions and 21 deletions
@@ -90,6 +90,7 @@ function processTitle(txt) {
const chars = Array.from(word.getElementsByClassName('char'));
styleWordChars(chars);
hyphenateWord(chars);
breakAfterHyphens(chars);
}
txt.classList.add('is-ready');
}
@@ -304,4 +305,22 @@ function hyphenateWord(chars) {
}
}
/**
* Autorise la coupure après un trait d'union (« text-to-speech »).
*
* Le « - » est isolé dans son span .char : l'opportunité de coupure qu'il
* porte normalement ne passe pas dans le flux entre les spans, et le mot
* entier ne coupe jamais. Comme pour les césures, on pose un point de coupure
* entre les spans : un <wbr>. (Un espace sans chasse U+200B à la place est
* ignoré par Firefox après un « - » : mesuré sur /projets, aucune coupure.)
*/
function breakAfterHyphens(chars) {
for (let i = 0; i < chars.length - 1; i++) {
const c = chars[i];
if (/^[-‐]$/.test(c.textContent) && c.parentNode) {
c.parentNode.insertBefore(document.createElement('wbr'), c.nextSibling);
}
}
}
initTitles();