Effectivement, mettre un noeud après le html racine n'est peut-être pas une bonne idée (même si ça marche

).
Admettons, je mettais ça comme ça. Donc je le mets sur body... ça ne marche pas !
Exemple
Code : Tout sélectionner
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<style type="text/css">
p {
counter-increment:machin;
}
body:after {
display:block;
content:counter(machin);
}
</style>
</head>
<body>
<p>Paragraphe 1</p>
<p>Paragraphe 2</p>
</body>
</html>
Ça affiche toujours 1. Même avec 10 paragraphes.
En fait, ça affiche 1 (et même 0 si les <p> ne sont pas des enfants directs, p.ex s'ils sont inclus dans un div - donc dans le html c'est
toujours 0).
Conclusion, on est bien obligé de le mettre sur le <p> ou un de ses enfants. Cela veut dire qu'il est impossible d'utiliser ce mécanisme pour sommer quoi que ce soit. Ça ne fait que me confirmer : c'est nul !
Ça s'appelle une régression. Ça sera incompatible avec l'implémentation d'Opera (qui existe déjà depuis un bout de temps), et peut-être avec celle de KHTML ? donc on ne peut pas dire que la spec en l'état n'est pas implémentable (vu que c'est déjà fait) ni qu'ils le font dans un but de compatibilité (vu que ça va la casser). Je ne comprend pas la logique qui fait qu'un "1" s'affiche malgré tout... J'espère que le CSS3 rétablira les choses
Edit : avec un "counter-reset: machin 5;" sur body j'ai un comportement des plus étranges : ça affiche 6 mais il arrive que ça affiche 5 ou d'autres nombres plus exotiques si on recharge la page (il y a un "9" qui apparaît parfois). Pour moi ça a tout du bug, laissons donc le temps de rectifier la chose
