Не знаю, как правильно описать проблему, поэтому вместо этого стоит JSFiddle.Счетчик CSS отключен, когда «оставляя область для ребенка»
Проблема здесь состоит в том, что нумерация для Para 1.3
и Para 1.4
не горит: para
счетчик не «сброс», когда он «выходит» объем вложенного <section>
тега.
body { counter-reset: chapter 0; }
section { counter-reset: para 0; }
h2:before {
counter-increment: chapter;
content: counter(chapter) ". ";
}
section p:before {
counter-increment: para;
content: counter(chapter) "." counters(para, ".") ". ";
}
<h2>Chapter 1</h2>
<section>
<p>Para 1.1</p>
<p>Para 1.2</p>
<section>
<p>Para 1.2.1</p>
<p>Para 1.2.2</p>
<section>
<p>Para 1.2.2.1</p>
<p>Para 1.2.2.2</p>
</section>
</section>
<p>Para 1.3</p>
<p>Para 1.4</p>
</section>
Что ты говоришь? Разделы могут содержать параграфы и другие разделы, которые, в свою очередь, могут содержать собственные абзацы и разделы, объявление. Причина, по которой абзац не может содержать раздел, состоит в том, что он просто не работает. И почему вы рекомендуете разметку главы прозы как одного гигантского * неупорядоченного * списка? – BoltClock
Возможно, я не был достаточно ясен. 'section' с' p' структурой не работает, потому что вы не можете установить связь между p и секцией (отношения родитель-ребенок). поэтому я использовал списки (вы можете использовать OL вместо UL ofc). если вы посмотрите на мою структуру, внутри некоторых 'li' вы можете найти 'ul'. это невозможно с p и секцией. Я дал альтернативное решение для структуры HTML OPs. Альтернатива, которая достигает того, чего хочет OP. надеюсь, теперь я ясно сказал –