接受的答案解决了一级标题的问题(即问题中的 H1),但如果有多个级别的标题则不能解决(见下文)
body {
counter-reset: h1 h2 h3 h4;
}
h1 {
counter-reset: h2 h3 h4;
}
h2 {
counter-reset: h3 h4;
}
h3 {
counter-reset: h4;
}
h1:before {
counter-increment: h1;
content: counter(h1)" ";
}
h2:before {
counter-increment: h2;
content: counter(h1)"." counter(h2)" ";
}
h3:before {
counter-increment: h3;
content: counter(h1)"."counter(h2)"."counter(h3)" ";
}
h4:before {
counter-increment: h4;
content: counter(h1)"."counter(h2)"."counter(h3)"."counter(h4)" ";
}
div:before {
content: counter(h1)"."counter(h2)"."counter(h3)"."counter(h4)" ";
}
<div>
div
<h1>H1</h1>
<h2>H2</h2>
<h3>H3</h3>
<h4>H4</h4>
<h4>H4</h4>
<h4>H4</h4>
</div>
<div>
div
<h4>H4</h4>
<h4>H4</h4>
</div>
<div>
div
<h3>T1</h3>
<h3>T1</h3>
</div>