css-列表或标题的多级计数
利用css实现多级计数,比如1/1.1/1.1.1这种层层嵌套的计数,主要利用到counter-reset/counter-increment/counter/content/:before。
一、标题类多级计数,比如下面的效果:

CSS代码如下:
body{
counter-reset: chapter section subsec;
}
h1{
counter-reset: section subsec;
}
h2{
counter-reset: subsec;
}
h1:before{
counter-increment: chapter;
content: counter(chapter,cjk-ideographic)"、";
}
h2:before{
counter-increment: section;
content: counter(chapter)"."counter(section)" ";
}
h3:before{
counter-increment: subsec;
content: counter(chapter)"."counter(section)"."counter(subsec)" ";
}
总结说明:
1、在每一级标题的上级(父元素),比如h1的上级为body,那么在body上重置body下的所有计数器,h2的上级为h1,在h1上重置h1子元素的所有计数器。
2、在每一层的:before伪类上递增该层计数器,比如h1的计数器为chapter,那么递增该计数器,可接受第二个参数表示步长,默认为1.
3、在每一层的:before伪类上利用content和counter(计数器)显示从h1到该层的计数器,使用“.”分隔,也可以使用其他的分隔符,比如空格或者“-”。
4、counter(计数器,type)第二个参数是list-style-type的关键字,默认为decimal。cjk-ideographic将显示为一二三这种形式。
二、嵌套的多级列表实现多级计数
形如以下的结构:
<ol>
<li>绪论</li>
<li>正文
<ol>
<li>正文一</li>
<li>正文二</li>
<li>正文三
<ol>
<li>正文三内容一</li>
<li>正文三内容二</li>
<li>正文三内容三</li>
</ol>
</li>
<li>正文四
<ol>
<li>正文四内容一</li>
<li>正文四内容二</li>
<li>正文四内容三</li>
</ol>
</li>
</ol>
</li>
<li>总结</li>
</ol>
正常显示如下:

如果为每个ol建一个类或者id,利用上面的方法也可以实现多级计数。但是有一种更快捷的方法。
CSS代码如下:
ol{
list-style: none;
counter-reset: ordered;
}
li:before{
counter-increment: ordered;
content: counters(ordered,".")" ";
}
效果如下:

总结说明:
1、根据CSS权威指南,计数器具有作用域的概念,每层嵌套都会为给定计数器创建一个新的作用域,即每层都创建了一个新的ordered实例。
2、counters(ordered,“.”)将把各作用域的ordered计数器串起来,以.相连。可接受第三个参数,为list-style-type关键字,每层显示样式都会变为关键字规定样式。
3、要为每层应用不同的关键字样式,可能还是需要用方法一。
css-列表或标题的多级计数的更多相关文章
- word 2013 标题设置多级列表
1.问题 要设置标题为多级列表,批量应用 2.解决 1选标题1 2选标题2 ...以此类推.点确定保存即可
- HTML 学习笔记 CSS(列表)
CSS列表属性允许你放置 改变列表项标志 或者将图像作为列表项标志. CSS列表 从某中意义上讲 不是描述性的文本的任何内容都可以认为是列表.人口普查.太阳系.家谱.参观菜单,甚至你的所有朋友都可以表 ...
- 修改文档框架:word-多级列表与标题样式相结合
转自:http://blog.sina.com.cn/s/blog_6721f25c0100nuf0.html 设置标题的时候希望出现多标题并且自动编号的标题,如下1. XXXXXXXXXXX ...
- CSS 列表 你知道吗
CSS 列表属性允许你放置.改变列表项标志,或者将图像作为列表项标志.CSS 列表从某种意义上讲,不是描述性的文本的任何内容都可以认为是列表.人口普查.太阳系.家谱.参观菜单,甚至你的所有朋友都可以表 ...
- 复习-css列表和表格相关属性
css列表和表格相关属性 list-style:设置所有列表属性 list-style-image:将图像设置为列表项标记,主要有url值 list-style-position:设置列表项标记的放置 ...
- 前端开发css实战:使用css制作网页中的多级菜单
前端开发css实战:使用css制作网页中的多级菜单 在日常工作中,大家都会遇到一些显示隐藏类菜单,比如页头导航.二维码显示隐藏.文本提示等等......而这些效果都是可以使用纯css实现的(而且非常简 ...
- 为dedecms文章列表页标题增加序号,第二页开始才显示第x页
想必大伙建站都会写文章,随着时间的推移,你的智慧结晶会越来越多,一般的建站程序早帮你想好了,把这些文章做成一个列表,比如dedecms栏目列表,便于观众浏览,但有个问题就是dedecms文章列表页标题 ...
- DIV+CSS列表式布局(同意图片的应用)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- CSS 列表
CSS列表属性作用如下: 设置不同的列表项标记为有序列表 设置不同的列表项标记为无序列表 设置列表项标记为图像 列表 在HTML中,有两种类型的列表: 无序列表 - 列表项标记用特殊图形(如小黑点.小 ...
随机推荐
- java IO流详解
流的概念和作用 学习Java IO,不得不提到的就是JavaIO流. 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...
- SpringBootService,一个基于spring boot搭建的SOA服务框架
SpringBootService,这是一个spring boot微服务的框架,包括redis,mq,restful,定时器,mybatis.易扩容.易维护的架构. 项目说明 该项目使用maven进行 ...
- JS中的对象
什么事对象?对象是一个整体,对外提供一些操作.而面向对象,就是使用对象时,只关注对象提供的功能,不关注内部的细节,面向对象是一种通用思想. 面向对象编程的特点: 抽象:抓住核心问题: 封装:不考虑内部 ...
- ES6之解构赋值
截止到ES6,共有6种声明变量的方法,分别是var .function以及新增的let.const.import和class: 我们通常的赋值方法是: var foo='foo'; function ...
- 使用PullToRefresh插件实现ListView下拉刷新(Android Studio)
下载PullToRefresh
- React-Native坑:Invariant Violation:Application 项目名 has not been registered.
前言 在学习一门新技术的你也许有跟我一样的困惑,照着书上或者视频上的敲了.但是就是有各种问题没有出来自己想要的结果.我会将自己在这个过程中遇到的坑都记录下来,不一定全覆盖,但希望这些文章可以解决你的问 ...
- swift学习笔记5——其它部分(自动引用计数、错误处理、泛型...)
之前学习swift时的个人笔记,根据github:the-swift-programming-language-in-chinese学习.总结,将重要的内容提取,加以理解后整理为学习笔记,方便以后查询 ...
- 传统IT企业与互联网企业的一点思考
[注意前提]应当说,比较常用的管理策略并没有界线分明的优劣之分,只有适不适合企业的经营战略,团队文化,发展状况等. 之所以有传统IT企业与互联网企业的区别,主要的原因是两者所处的市场环境与经营思路造成 ...
- [Erlang 0117] 当我们谈论Erlang Maps时,我们谈论什么 Part 2
声明:本文讨论的Erlang Maps是基于17.0-rc2,时间2014-3-4.后续Maps可能会出现语法或函数API上的有所调整,特此说明. 前情提要: [Erlang 0116] 当我们谈论E ...
- java.lang.UnsatisfiedLinkError: %1 不是有效的 Win32 应用程序。
JNA 调用 dll 库时,保错: ///////////////// 通过 JNA 引入 DLL 库 //////////// /** * ID_FprCap.dll 负责指纹的采集, 指纹仪的初始 ...