0

所以我正在用html5写一本手册,它需要编号。

  • 标题需要编号,例如“第 4 节:一些东西”
  • 一些副标题需要编号,例如“4.01:你需要了解的第一点”

只是为了困难,手册将有表格和图像,因此它们需要编号,例如

“图 4.03 一只猫。互联网上的大多数图片都是猫的。”

此外,手册中有很多流程列表。如果这些在子标题下编号会很好,例如

4.05 一个简单的过程

4.05.01 从树上拔出一片叶子
4.05.02 吃掉它
4.05.03 现在你是一只毛毛虫
4.05.04 变成一只美丽的蝴蝶

我一直在研究为标题、副标题、数字和列表编号的不同方法。我正在寻找答案,只是没有好的答案。

不完美的解决方案1:使用CSS计数器

这些不能复制到编辑程序(word 等)它们显然也不适用于屏幕阅读器

不完美的解决方案2:使用有序列表

这些不会“优雅地失败”afaik - 如果我所有的标题都是有序列表的“标题”类,它们看起来就像没有 CSS 的普通列表。

有人已经解决了这个问题吗?解决方案是什么?

对于任何可以提供自动更新我的图形交叉引用的智能方式的人,都非常值得称赞!

4

1 回答 1

1

使用文本。

<h3>4.01: the first point you need to know about some stuff</h3>

编号不仅仅是样式(您可能想引用这些数字,对吗?),因此 CSS 解决方案是毫无疑问的。

在某些情况下使用ol 可以工作,但它有很多缺点:

  • 您不想ol在整个文档中使用一个,对吗?
  • 用户代理根本不需要渲染任何数字。
  • 许多用户代理不允许搜索或复制数字。
  • 您无法获得您想要的确切类型的编号方案(例如,嵌套ol通常不会呈现分隔符,.而是从第一个值重新开始)。
于 2014-12-30T04:10:01.863 回答