0

我使用下面的 CSS 代码将行号添加到表行:

table {
    direction: rtl;
    counter-reset: line-number;
}

td:first-child {
    text-align: right !important;
}

td:first-child:before {
    content: counter(line-number) ".";
    counter-increment: line-number;
    padding-right: 0.3em;
    color: lightgray;
}

但它的内容在第十行之后没有对齐。见下图:

行号填充问题

但我想要这样的东西:

行号2

我也尝试添加padding,但这不是一个有效的解决方案。

如何解决这个问题?

这是我现在的小提琴

4

2 回答 2

2

您可以设置min-width.td:first-child:before

td:first-child:before {
content: counter(line-number) ".";
counter-increment: line-number;
padding-right: 0.3em;
color: lightgray;
min-width: 20px;
display: inline-block;
}
于 2016-08-11T07:58:05.353 回答
0

确保将数字放入元素中,如下所示:

<input type="checkbox"> <div class="number">10</div>

然后您可以设置该元素的样式,使其具有最小宽度:

.number {
   min-width:20px;
}

这样它们就具有相同的含义,并且您不需要padding根据数字的位数来搞笑。

于 2016-08-11T07:57:55.007 回答