乐趣区

关于前端:CSS-函数那些事五计数函数

counter()

counter 返回一个代表计数器以后值的字符串。接管两个参数,一个名称,一个计数款式。counter(name,styleName),name 辨别大小写,作为代表以后计数器的名称标识。styleName 参数是可选的,代表递增数字或者字母的品种,可承受的参数为 list-style-type 所反对的品种。罕用的有以下这些:

  • disc(实心圆点)
  • circle(空心圆点)
  • square(实心方块)
  • decimal(阿拉伯数字 12345…)
  • lower-roman(罗马数字 i, ii, iii…)
  • upper-roman (罗马数字 I, II, III, IV…)
  • simp-chinese-informal (中文计数 一、二、三、…. 九十九、)
  • simp-chinese-formal(中文繁体 壹贰叁肆伍 …)
  • lower-latin (小写字母 abcd…)
  • upper-latin (大写字母 ABCD….)

更多信息以及兼容性可看 MDN list-style-type


与计数器利益相干的还有两个属性值:

  • counter-reset
  • counter-increment

counter-reset,counter-increment

counter-reset 用于重置 CSS 计数器,重置内容包含名称,初始数字。例子:

    <div class="demo1"></div>

      .demo1 {counter-reset: counter1 123;}
      .demo1:before {content: counter(counter1,simp-chinese-formal);
      }

成果


counter-increment 用于代表计数器的递增距离,看代码

    <div class="demo2">
      <section></section>
      <section></section>
      <section></section>
      <section></section>
    </div>
      .demo2{
        counter-reset: counter2 1;
        /* counter-increment: counter2 -2; */
      }
      section:before {content: counter(counter2,decimal);
        counter-increment: counter2 2;
      }

成果

兼容性

根本都反对

counters()

counters() 是一个嵌套计数器,用于定义嵌套计数器的连贯字符.counters(counterName,string,styleName), 接管 3 个参数 counterName,string,styleName. 其中第三个参数是可选的。看栗子

    <div class="father">
      <div class="son">
        内容一
        <div class="father">
          <div class="son"> 子内容一 </div>
          <div class="son"> 子内容二 </div>
          <div class="son"> 子内容三 </div>
        </div>
      </div>
      <div class="son">
        内容二
        <div class="father">
          <div class="son">
            子内容一
            <div class="father">
              <div class="son"> 子子内容一 </div>
              <div class="son"> 子子内容二 </div>
            </div>
          </div>
          <div class="son"></div>
          <div class="son"></div>
          <div class="son"></div>
        </div>
      </div>
      <div class="son">
        内容三
      </div>
    </div>

      .father {
        counter-reset: counter3;
        padding-left: 30px;
      }
      .son:before {content: counters(counter3, "-")'.';
        counter-increment: counter3;
      }

成果

列表元素用 counters 定义相互之间的计数连贯规定,能够很不便模仿有序列表。

兼容性

兼容性跟 counter 一样

总结

counter 类比 ol,ul,在款式的把握上,会更加灵便,设置款式也更加得心应手。对于有列表相干款式优化的我的项目,能够思考应用 counter(),counters() 来优化。兼容性也不错。

最初

我最近在总结 css 函数相干的货色,这篇是系列文章的第四篇,目前已产出

  • CSS 函数那些事(一)比拟函数
  • CSS 函数那些事(二)你不晓得的 attr()”)
  • CSS 函数那些事(三)背景图片函数
  • CSS 函数那些事(四)网格函数

我的项目中会蕴含文章中的测试代码,都做好了相应的分类,欢送各位继续关注,有帮忙话能够点个赞哦!我的项目地址戳这里

退出移动版