
cssで簡単にナンバリングするには?
<ol>
<li>Jan.</li>
<li>Feb.</li>
<li>Mar.</li>
</ol>

<div class="num-list">
<div>Apr.</div>
<div>May</div>
<div>June</div>
</div>
<style>
.num-list{
counter-reset: num;
}
.num-list > *{
padding-left:20px;
}
.num-list > *:before{
counter-increment: num;
content: counter(num) ".";
margin-right:10px;
}
</style>

<table class="table-list">
<tr><td>July</td></tr>
<tr><td>Aug.</td></tr>
<tr><td>Sep.</td></tr>
</table>
<style>
.table-list{
counter-reset: num;
margin-left:20px;
}
.table-list td:before{
counter-increment: num;
content: counter(num) "-";
margin-right:10px;
}
</style>

See the Pen numbering by YugetaKoji (@geta1972) on CodePen.
ページャーなどの場合、途中開始するには?
<div class="num-list">
<div>AAA</div>
<div>BBB</div>
<div>CCC</div>
</div>
<style>
.num-list{
counter-reset: num 3;
}
.num-list > *{
padding-left:20px;
}
.num-list > *:before{
counter-increment: num;
content: counter(num) ".";
margin-right:10px;
}
</style>

<div class="num-list">
<div>AAA</div>
<div>BBB</div>
<div>CCC</div>
</div>
<style>
.num-list{
counter-reset: num;
}
.num-list > *{
padding-left:20px;
}
.num-list > *:before{
counter-increment: num;
content: counter(num) ".";
margin-right:10px;
}
</style>
<javascript>
var numList = document.querySelector(".num-list");
numList.style.setProperty("counter-reset","num 10","");
</javascript>

See the Pen numbering-2 by YugetaKoji (@geta1972) on CodePen.
非表示は抜け番になる?
この機能の非常に優れている点として、表示しているもののみのナンバリングを行ってくれる点です。 途中を非表示にしてみると、以下のようになります。<div class="num-list">
<div>AAA</div>
<div>BBB</div>
<div>CCC</div>
</div>
<style>
.num-list{
counter-reset: num;
}
.num-list > *{
padding-left:20px;
}
.num-list > *:before{
counter-increment: num;
content: counter(num) ".";
margin-right:10px;
}
.num-list > *:nth-child(2){
display:none;
}
</style>

複数対応と数値以外の対応
複数のナンバリングを混載させることも可能で、以下のように記述できます。<div class="num-list">
<div>AAA</div>
<div>BBB</div>
<div>CCC</div>
</div>
<style>
.num-list{
counter-reset: num num2 10;
}
.num-list > *{
padding-left:20px;
}
.num-list > *:before{
counter-increment: num;
content: counter(num) ".";
margin-right:10px;
}
.num-list > *:after{
counter-increment: num2;
content: "." counter(num2);
margin-left:10px;
}
</style>

See the Pen numbering-4 by YugetaKoji (@geta1972) on CodePen.

0 件のコメント:
コメントを投稿