我们常见的ol可以自动添加数量,这是常见的ol
但是如果我们想要更个性化,应该怎么办呢?比如这个样子
我们可以用css counter-increment/counter-reset 和:before或者:after来使用
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style type="text/css">
li {
list-style: none;
}
.container {
counter-reset: section
/* 给计数器起个名字 */
}
h1 {
position: relative;
width: 300px;
counter-reset: subSection;
height: 60px;
border-bottom: 1px solid #ccc
}
h1::after {
/* counter-increment 用于将CSS Counters的值增加给定值。 */
counter-increment: section;
/* */
content: "*"counter(section);
display: block;
position: absolute;
right: -18px;
bottom: -9px;
color: #8d8d8d;
font-weight: 400;
font-size: 16px;
}
ul {
counter-reset: subSection
}
ul li {
position: relative;
width: 300px;
}
ul li::before {
counter-increment: subSection;
/* */
content: counter(section) "-"counter(subSection);
display: block;
position: absolute;
left: -40px;
bottom: 2px;
color: #8d8d8d;
font-weight: 400;
font-size: 16px;
}
</style>
</head>
<body>
<div class="container">
<ol class="container-0">
<li>
<h1 class="title">
这是标题1
</h1>
<ul>
<li>内容内容</li>
<li>内容内容</li>
<li>内容内容</li>
<li>内容内容</li>
<li>内容内容</li>
</ul>
</li>
<li>
<h1 class="title">
这是标题2
</h1>
<ul>
<li>内容内容</li>
<li>内容内容</li>
<li>内容内容</li>
<li>内容内容</li>
<li>内容内容</li>
</ul>
</li>
<li>
<h1 class="title">
这是标题3
</h1>
<ul>
<li>内容内容</li>
<li>内容内容</li>
<li>内容内容</li>
<li>内容内容</li>
<li>内容内容</li>
</ul>
</li>
</ol>
</div>
</body>
</html>