技巧

关于表格

在目录页中,会用每个表格的标题来生成表格清单。不希望被收录的可以使用 informaltable

可以通过在 CSS 中指定 table 和 informaltable 的样式来定义两种表格

交叉引用

可以放心的先引用,然后再定义被引用的部分。如果被引用的部分没有被定义,发布的时候 xsltproc 会给出提示

calloutlist 自动编号问题

callout 如果不是定义在 screen、programlisting、synopsis 等块元素中,则下一个 calloutlist 中编号并不会重新开始,而是继续上次的。

经测试,callout 并不需要定义在 screen 等元素中,只要两个 calloutlist 中间有这些元素隔开就可以了。

可以定义一个不常用的元素,如 synopsis,来进行分隔。

只要在两个 calloutlist 之间的任何位置插入一个空标记 就可以了

当然了,生成的 Html 效果有一点怪异。在 CSS 中加入下面代码可以隐藏。

  1. .synopsis {display:none;}

尽量把这个标记放在不影响显示的地方,例如两个 section 之间;这样即便意外的显示,也只显示在目录中

断行符

在 param.xsl 文件中加入

  1. <xsl:template match="processing-instruction('linebreak')">
  2. <br/>
  3. </xsl:template>

在源文件中加入

  1. <?linebreak?>

生成 Html 时替换为

这里是演示

内部链接

内部链接时,要给结构元素定义 ID,而不要给 title 定义 ID,不然跳转时会到达错误的位置