2014-11-03 59 views
2

在打印(可能是双面打印)输出的HTML文档中创建marginalia的最佳方法是什么?如何在分页媒体中创建边缘?

对于连续媒体(例如screen)而言,获得边缘是很容易的,例如,像这样:

@media screen { 
    body { 
     padding-left: 32mm; 
    } 
    .marginalia {  /* not a "margin at-rule" */ 
     float: left; 
     clear: both; 
     display: block; 
     margin: 0 0 0 -32mm; 
     padding: 0; 
     width: 30mm; 
     text-align: right; 
     font-size: smaller; 
    } 
} 

但我们的运气了,当我们想在页面媒体评点,并把它们放在右侧上:right页面,并在左侧上:left页面,因为:

此规范的当前级别仅允许在'@page'内的保证金规则 。 CSS Paged Media Module Level 3, 5.1: The @page rule

所以,这应该是怎样做的,或者:你怎么办呢?

我更喜欢现有或建议的CSS标准的解决方案,但恐怕可能没有;因此,我对专用于某些用户代理的专有解决方案感兴趣,例如,网页浏览器或PDF生成器,包括那些使用专有Javascript API的。

回答

0

我承认这是一个远射,但如果专有是你的选择,那么你会发现Prince有趣。它目前可能是the only布局引擎,支持CSS3 paged media margin boxes,如果我理解正确的话就是你正在寻找的东西。

+0

我已经使用页面媒体页边框; [PDFreactor](http://www.pdfreactor.com/)也支持它们。问题是,目前在这些盒子里面没有“内部”和“外部”的逻辑侧面,而只有“左侧”和“右侧”,这使得双面布局非常麻烦。 – Tobias 2015-07-06 07:12:35