zoukankan      html  css  js  c++  java
  • css计数器

    很多时候要是实现一行文字前面的序列号的话,可能会直接添加个新元素或者利用before伪元素实现。但如果是多行文字的序列号的话,就不是那么简单了。

    恰好,css就有这么个计数器可以实现这个功能。

    counter-reset:进行计数器的重置。
    counter-increment:进行计数器的递增或递减。
    counter():输出计数器。

    就以上三个属性。但使用起来可不是这么简单:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <style type="text/css">
            div{
                /*counter-reset: dd tt;*/
                /*进行计数器的递增,可同时设置两个计数器*/
                counter-increment: dd tt;
    
            }
            div:before,div:after{
                /*counter-increment: dd tt;*/
                display: inline-block;
                width: 20px;
                height: 20px;
                margin: 5px;
                line-height: 20px;
                color: #fff;
                text-align: center;
                border-radius: 100%;
                background-color: #f00;
            }
            div:before{
                /*显示计数器*/
                content: counter(dd)
            }
            div:after{
                content: counter(tt);
            }
        </style>
    </head>
    <body>
        <div>text</div>
        <div>text</div>
        <div>text</div>
        <div>text</div>
        <div>text</div>
    </body>
    </html>

    以上的是同一级的计数器,没嵌套。

    以下的是有三级的嵌套:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <style type="text/css">
            .reset{
                padding-left: 20px;
                counter-reset: num;
            }
            .counter{
                color: #666;
            }
            .counter:before{
                counter-increment: num;
                content: counters(num,'-');
                font-family: arial black;
            }
        </style>
    </head>
    <body>
        <div class="reset">
            <div class="counter">
                第一级
                <div class="reset">
                    <div class="counter">第二级</div>
                    <div class="counter">第二级
                        <div class="reset">
                            <div class="counter">第三级</div>
                            <div class="counter">第三级</div>
                            <div class="counter">第三级</div>
                        </div>
                    </div>
                    <div class="counter">第二级</div>
                    <div class="counter">第二级
                        <div class="reset">
                            <div class="counter">第三级</div>
                            <div class="counter">第三级</div>
                            <div class="counter">第三级</div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </body>
    </html>

    详情可查看这篇文章

  • 相关阅读:
    HDU 4705 Y
    POJ 3614 Sunscreen
    Aizu 2170 Marked Ancestor
    POJ 3616 Milking Time
    POJ 2385 Apple Catching
    POJ 2229 Sunsets
    HDU 4678 Mine
    树的重量
    579Div3
    迷途之家2019联赛
  • 原文地址:https://www.cnblogs.com/11lang/p/6959386.html
Copyright © 2011-2022 走看看