在有序列表中,系统要求我以与列表项不同的颜色显示数字,并在数字旁边添加一个点。
我设法实现了这一点,但是当数字变为两位数(从10开始)时,该点的位置不正确。
有什么办法解决吗?
CSS:
ol {
list-style: none;
counter-reset: item;
li {
position: relative;
&::before {
content: counter(item);
counter-increment: item;
color: green;
display: inline-block;
width: 1em;
font-weight: bold;
margin-right: 0.5rem;
}
&::after {
position: absolute;
content: '.';
left: 12px;
color: green;
font-weight: bold;
}
}
}
答案 0 :(得分:2)
无需使用after伪元素:像这样更改::before
,只需在content
的末尾添加点即可。
ol {
list-style: none;
counter-reset: item;
li {
position: relative;
&::before {
content: counter(item) ".";
counter-increment: item;
color: green;
display: inline-block;
width: 1em;
font-weight: bold;
margin-right: 0.5rem;
}
}
}
通过这种方式,无论您有多少位数,点的位置将始终跟随数字。