Rein mit CSS geht das m.W. nicht. Das geht nur mit einem entsprechenden Workaround. Aber dazu hilft google (erstes Ergebnis)
Viel zu lernen du noch hast, junger Padawan :p
.toc ol { counter-reset: item; }
.toc li { list-style: none; }
* html .toc li { list-style: decimal; }
*:first-child+html .toc li { list-style: decimal; }
.toc li:before {
content: counters(item, '.');
counter-increment: item;
padding-right: 0.75em;
font-weight: bold;
}
<div class="toc">
<ol>
<li>foo</li>
<li>bar</li>
<li>baz
<ol>
<li>foo</li>
<li>bar</li>
<li>baz</li>
</ol>
</li>
</ol>
</div>
Für den IE6 und 7 ist es übrigens nicht fett, aber das wird keinen umbringen - die beiden Browser sind sowieso fast tot ... oder eher untot.