【问题标题】:CSS: Start numbering pages with 2 instead of 1CSS:从 2 开始编号页面而不是 1
【发布时间】:2010-09-20 20:25:01
【问题描述】:

在 CSS 中,使用:

@page { @top-right { content: "Page " counter(page) " of " counter(pages); } }

我可以在打印页面时在每页的顶部显示页码。这很好用。但是现在,我怎样才能使页码以 2 而不是 1 开头?我可以通过修改上面的 CSS 规则来做到这一点吗?

【问题讨论】:

    标签: css counter


    【解决方案1】:

    不知道这是否有效,但你为什么不试试counter(page+1)

    【讨论】:

    【解决方案2】:

    在玩了一会儿飞碟之后,我想 CSS 没有办法做到这一点(或者它是一个非常复杂的方法),因为“page”/“pages”似乎是内部 CSS 变量。也许 CSS 3 会变得更好,似乎有一个 calc() 函数,所以 counter(calc(page+1)) 可以也许工作......

    但是还有另一种方法可以从第 2 页开始获取 PDF。您可以通过将此行添加到 xhtml 文件来为 PDF 添加空白的第一页:

    <h1 style="page-break-before:always"></h1>
    

    然后您可以在使用打印机时仅打印 PDF 的第 2-... 页,或者使用某些 PDF 编辑器从 PDF 中删除第一页。

    【讨论】:

      【解决方案3】:

      如果您使用的是飞碟(我的情况),请使用以下 CSS:

      table { -fs-table-paginate: 分页; }

      它就像一个魅力。和飞碟岩石:)。真的强烈推荐。

      【讨论】:

        【解决方案4】:

        你看过关于计数器的 CSS 文档吗? see here 在我看来,您可以调用计数器重置。默认情况下,计数器设置为 0。如果在您的 Body 标记中您执行了“内容重置:第 1 页;”那么它应该强制第一页从 2 而不是 1 开始。

        【讨论】:

          【解决方案5】:

          试试:

          @page {
              counter-increment: page;
              counter-reset: page 1;
              @top-right {
                  content: "Page " counter(page) " of " counter(pages);
              }
          }
          

          使用page 1 将重置计数器的起点。您可以使用任何整数开始计数。默认为0

          【讨论】:

            【解决方案6】:

            为查看此页面的其他人发布此内容。您还可以查看下面提供的另一个 stackoverflow 帖子。这对我有用。

            flying saucer - page count with css

            .seq-start{
                -fs-page-sequence: start;
            }
            

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2021-11-17
              • 1970-01-01
              • 2020-11-15
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多