每页打印的HTML脚注

Dav*_*der 16 html javascript css css3 css-gcpm

CSS3 GCPM规范定义了以下

<style>
 .footnote { float: footnote }
</style>

<p>A sentence consists of words. <span class="footnote">Most often.</span>.
Run Code Online (Sandbox Code Playgroud)

渲染为

一个句子由单词组成.¹

 ¹最常见的.[在(每个)页面的末尾]

打印时(也适用于屏幕媒体类型,但只要它适用于打印我很高兴).

正是我想要做的,无论多么复杂,但据我所知,没有现代浏览器实现此规范,也没有css-paging规范.如果我愿意使用javascript,有没有办法实现这种效果.至少可以使用一些库生成pdf,但如果可能的话,我希望不会失去html的功能(像浮动等等).


而且如果你想知道,请注意

注释是放置在书籍或文档中页面底部或章节,卷或整个文本末尾的一串文本.

和脚注是

...页面底部的注释,而尾注是在章节,卷或整个工作结束时的单独标题下收集的.

有关更多信息,请参阅排版注释中的wikipage.


可以寻找解决方案的一个可能方向是确定单页的高度,在这种情况下,在预期高度29.7cm和试验和误差高度(至少在我的系统上)之间注意到差异26.1cm,这可以使用以下方法观察到码:

<style>
    @page{
        margin:0px;
        padding:0px;
    }
    html,body,*{
        margin:0px;
        padding:0px;
    }
    p{
        border:1px solid black;
        height:26.1cm;
    }
</style>
Run Code Online (Sandbox Code Playgroud)

还有几个空<p>的.我会考虑对这种差异的解释(从而允许它的控制)足够解决问题.

Cir*_*e B 1

我一直在使用PrinceXML来完成您所说的操作,它的缺点是您必须使用 shell 脚本将其安装在计算机上。

我和一位同事正在开发一个简单的应用程序,它基本上是一个 html 文本编辑器,但可以将 html 导出为 PDF,其中包含目录、脚注、标题等。

Prince 是我们迄今为止遇到的最好的。如果这不适合您,请告诉我。