Html 嵌套有序列表上的递归项目符号样式

Html 嵌套有序列表上的递归项目符号样式,html,css,Html,Css,我希望根据其级别自动设置有序列表的样式,例如: 1. Item a. Item i. Item 1. Item a. Item i. Item ... 正如您所看到的,它正在重复这个序列:number>letter>roman-number 我可以通过CSS来实现这一点 ol { list-style-type:decimal; } ol > li > ol { list-style-

我希望根据其级别自动设置有序列表的样式,例如:

1. Item
  a. Item
    i. Item
      1. Item
        a. Item
          i. Item
           ...
正如您所看到的,它正在重复这个序列:
number>letter>roman-number

我可以通过CSS来实现这一点

ol {
    list-style-type:decimal;
}
ol > li > ol {
    list-style-type:lower-alpha;
}
ol > li > ol > li > ol {
    list-style-type:lower-roman;
}
ol > li > ol > li > ol > li > ol {
    list-style-type:decimal;
}
...
但这是乏味的,我不知道我需要多少水平

有没有更干净的方法通过CSS实现这一点?

我应该注意,我这样做是为了设计一个HTML编辑器,生成的HTML具有以下非常基本的结构:

<ol>
  <li>
    <ol>
      <li>
        ..

  • ..

  • 我无法控制HTML,也无法向其添加类或其他任何内容。

    这不是最漂亮的解决方案,但我们决定暂时使用此解决方案:
    感谢@Vucko建议我们不需要直接的子选择器

    这显然只适用于第9级,但我们不认为任何列表会深入到我们的场景中


    如果有某种
    :n-level()
    选择器…

    对你有用吗?@adm看起来OP想要纯css。@admdraw最好是纯css解决方案。没有SASS或更少。您不在
    li
    上使用任何样式,因此您可以使用
    ol/ol/ol/ol
    ,而无需直接子选择器。
    ol,
    ol ol ol ol,
    ol ol ol ol ol ol ol {
        list-style-type:decimal;
    }
    ol ol,
    ol ol ol ol ol,
    ol ol ol ol ol ol ol ol {
        list-style-type:lower-alpha;
    }
    ol ol ol,
    ol ol ol ol ol ol,
    ol ol ol ol ol ol ol ol ol {
        list-style-type:lower-roman;
    }