CSS计数器:counter

时间:2022-01-08 12:30:14

最近的需求,明星字体销售排行榜中,需要对字体的销售情况进行排序。

在早期,只有ol和ul可以对子元素li进行排序;如果不使用这两个标签,就由前台开发去手动填写序号。

当然,在这个需求中,数据不是实时更新的,手动填写序号并不是太麻烦。但是,像在线人数排行榜这些需要实时更新排名的页面,无论是插入新数据还是删除数据,都会涉及到后面数据序号变动。这样子就需要遍历后面的数据并逐条修改,增加浏览器的负担。

就想到CSS中的计数器counter这一属性,它可以对指定的元素进行自动排序。在CSS2.1规范中就加入了counter这一属性,配合伪元素:before、:after中的content使用,显示计数器的内容。

CSS计数器包括了counter-reset、counter-increment、content三个属性、counter() 函

数,以及伪元素:before、:after。

语法说明:

counter-reset:identifier [integer]。

默认值为none

indetifier:自定义的计数器名称,必选;

integer:计数器起始值,默认为0,可选;若设置值为0,则从1开始计数;

功能:用来标识计数器的作用域。可以包含多个计数器标识符

CSS计数器:counter  CSS计数器:counter

效果图:

CSS计数器:counter

counter-increment:identifier [integer]。

默认值为none

indetifier:counter-reset中声明的计数器标识符,必选;

integer:整数值,序号变化的间隔,正值则递增变化,负值则递减变化,也可为0;默认为1,可选;若设置值为2,且counter-reset中设置为0或未设置integer,元素序号为2、4、6 以此类推;

功能:用来标识计数器及其元素序号变化规则。

counter():配合content使用,接受两个参数,用逗号分隔。

第一个参数:counter-increment中定义的计数器标识符;

第二个参数:计数器风格,类似于list-style-type。

兼容性

在CSS2.1就被加入了规范,这一属性实用性很强,各大浏览器已经都支持,可以放心使用啦^_^

CSS计数器:counter