カウンタプロパティ

ちょっとCSSのcounterを使ってみて気付いたけど、Opera9とFirefox1.5では実装が違うようだ。

<h3>見出し</h3>
<div class="section">
  <h4 class="list">小見出し</h4>
  <p>文</p>
  <h4 class="list">小見出し</h4>
  <p>文</p>
  <h4 class="list">小見出し</h4>
  <p>文</p>
</div>

の場合は、Operaなら

div.section h4.class:before {
  content: counter(num) ". ";
  counter-increment: num;
}

小見出しの先頭に数字が連番で表示されるが、Firefoxの場合はさらに

div.section {
  counter-reset: num;
}

と、上位の要素でcounter-resetしないと正しく表示されないようだ。
Firefoxのほうが厳格にCSSを解釈しているのかと思ったが、W3Cの仕様書を読む限りではOperaの振る舞いの方が正しいのかな?