html - 在ol中重置嵌套计数

标签 html css html-lists

我使用下面的css在ol中生成嵌套计算:

ol{
    counter-reset: item;
}
ol li{
    display: block;
}
ol li:before{
    content: counters(item, ".")". ";
    counter-increment: item;
    float: left;
    margin-right: 5px;
}

在某种程度上的嵌套,我想重置嵌套。我怎样才能做到?
例如,
<ol>
    <li>
        <ol>
            <li>
                <ol>
                    <li>
                        <ol class="reset">
                            <li>
                                <ol>
                                    <li></li>
                                </ol>
                            </li>
                        </ol>
                    </li>
                </ol>
            </li>
        </ol>
    </li>
</ol>

给出以下信息:
1.
  1.1
     1.1.1
        1.1.1.1
           1.1.1.1.1

但我想要这样的结构
1.
  1.1
     1.1.1
        1 # reset here
          1.1

最佳答案

您可以重置计数器并在子列表项中重新开始。

ol li {
  counter-reset: item;
  display: block;
}

ol li::before {
  content: counters(item, ".")". ";
  counter-increment: item;
}

.reset li {
  counter-reset: reset_item;
}

.reset li::before {
  content: counters(reset_item, ".")". ";
  counter-increment: reset_item;
}

<ol>
  <li>
    <ol>
      <li>
        <ol>
          <li>
            <ol class="reset">
              <li>
                <ol>
                  <li></li>
                </ol>
              </li>
            </ol>
          </li>
        </ol>
      </li>
    </ol>
  </li>
</ol>

关于html - 在ol中重置嵌套计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54727012/

相关文章:

html - css-grid 2x2 或 2x3 布局,取决于元素的数量

css - 在 div 右下角旋转文本

jquery - 当 child 有特定类(class)时如何将类(class)添加到 li

javascript - 无法更改 arraylist 元素中的 .top 样式属性(javascript)

html - 为什么当我滚动时 facebook 页面应用程序中的统一溢出

javascript - 如何在不隐藏文本字段的情况下隐藏输入类型文件按钮?

html - UL > LI CSS/HTML 问题

jQuery 将每个列表包装在一个 ul 标记中

javascript - FullCalendar - 更改 View 不工作

javascript - 如何在 php 中传递值?