DokuWiki

It's better when it's simple

Outils pour utilisateurs

Outils du site


fr:tips:numbered_headings

Numérotation des titres par CSS uniquement

Voici l'approche CSS pure pour la numérotation des titres (voir the numberedheadings plugin pour une approche différente).

Le code CSS qui suit numérote tous les titres de votre contenu wiki, ainsi que ceux de la table des matières. Placez-le soit dans l'un des CSS de votre thème (template) (ainsi qu'à nouveau dans le print.css pour avoir la numérotation lors de l'impression) ou dans un userstyle.css dans votre répertoire ./conf :

div.dokuwiki .page {counter-reset: level1;}
div.dokuwiki div.toc:before, div.dokuwiki div.toc:after {counter-reset: level1; content: "";}
 
div.dokuwiki .page h1, div.dokuwiki ul.toc li.level1 {counter-reset: level2;}
div.dokuwiki .page h2, div.dokuwiki ul.toc li.level2 {counter-reset: level3;}
div.dokuwiki .page h3, div.dokuwiki ul.toc li.level3 {counter-reset: level4;}
div.dokuwiki .page h4, div.dokuwiki ul.toc li.level4 {counter-reset: level5;}
div.dokuwiki .page h5, div.dokuwiki ul.toc li.level5 {}
 
div.dokuwiki .page h1:before,
div.dokuwiki ul.toc li.level1 a:before {
    content: counter(level1) " ";
    counter-increment: level1;
}
div.dokuwiki .page h2:before,
div.dokuwiki ul.toc li.level2 a:before {
    content: counter(level1) "." counter(level2) " ";
    counter-increment: level2;
}
div.dokuwiki .page h3:before,
div.dokuwiki ul.toc li.level3 a:before {
    content: counter(level1) "." counter(level2) "." counter(level3) " ";
    counter-increment: level3;
}
div.dokuwiki .page h4:before,
div.dokuwiki ul.toc li.level4 a:before {
    content: counter(level1) "." counter(level2) "." counter(level3) "." counter(level4) " ";
    counter-increment: level4;
}
div.dokuwiki .page h5:before,
div.dokuwiki ul.toc li.level5 a:before {
    content: counter(level1) "." counter(level2) "." counter(level3) "." counter(level4) "." counter(level5) " ";
    counter-increment: level5;
}

Cela fonctionne avec le thème default. Pour d'autres, chaque occurrence de .page doit être remplacée par le nom de la “boîte contenant les contenus” (probablement “#content” ou équivalent).

Inconvénients

  • fonctionne seulement avec les navigateurs « modernes » (pas IE, j'ai testé FF et Opera sur Win ; Safari est probable) ;
  • pas de restriction à certaines pages (pour l'instant - cela peut être fait par un autre greffon).

Testé

  • dokucms : fonctionne. Il faut juste supprimer toutes les occurrences de .page ( — bersyl91 2010/05/03 11:29) .
fr/tips/numbered_headings.txt · Dernière modification : 2012-01-18 08:45 de 157.26.190.7

Sauf mention contraire, le contenu de ce wiki est placé sous les termes de la licence suivante : CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki