CSS - 缩进列表项

Lee*_*Lee 7 html css html-lists

有没有办法使用CSS缩进每个列表项?

所以正常的清单:

<ul>
  <li>One</li>
  <li>Two</li>
  <li>Three</li>
  <li>Four</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

显示如下:

One
  Two
    Three
      Four
Run Code Online (Sandbox Code Playgroud)

Ban*_*zay 9

在这里,您可以使用:before带有透明边框的伪元素.您可以通过更改伪元素的宽度来变量列表项的缩进.随着如果设置可以更改列表标记list-style: none;和设置colorcontent

编辑:

删除display: blockcolor: transparent使用空格字符\00a0作为内容.

li:before {
    float: left;
    content: "\00a0";
    width: 20px;
    border: 1px solid transparent;
}
Run Code Online (Sandbox Code Playgroud)
<ul>
  <li>One</li>
  <li>Two</li>
  <li>Three</li>
  <li>Four</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

下面一个是改变列表标记稍微复杂一些(除去display: block由@dippas建议,但border-top不是border没有出于某种原因)

ul {
   list-style: none;
   counter-reset: cnt;
}

li:before {
   float: left;
   counter-increment: cnt;
   content: counter(cnt)" \25b6";
   max-height: 100%;
   width: 29px;
   border: 1px solid transparent;
   margin-top: -.1em;
   color: green;
}
Run Code Online (Sandbox Code Playgroud)
<ul>
      <li>One</li>
      <li>Two</li>
      <li>Three</li>
      <li>Four</li>
    </ul>
Run Code Online (Sandbox Code Playgroud)