IE 7打印时HTML页面的边距问题

4

如何在打印HTML时设置页面边距?

我知道@page在IE 8,IE 9上起作用,但是在IE 7上不起作用。因此,我想知道如何在IE 7上实现相同的效果。


你能展示一下你写的CSS吗? - Tepken Vannkorn
也许您可以添加一些已有的CSS代码...这可能会帮助我们一点。 - Ladineko
不要在IE 7上使用CSS代码。@page可以在IE8+上工作,但不支持IE7。 - Alex Cube
1个回答

2
正如你所指出,并在此文章http://blog.orite.com.au/web_development/2009-04-09/css-implementation-chart-ie6-ie7-ie8/中证实,IE7不支持@page指令。
如果您确实需要在IE7中控制它,则可以在打印样式表中的body元素上设置填充。当然,您可以在cmin或任何其他尺寸中进行设置。由于您会在打印表中设置此内容,因此结果不会影响普通页面查看器。缺点是您无法控制每个页面的上部和下部边距。但是,如果您只需要左右边距,则这可能是您可行的解决方法。
以下是一种快速的CSS hack,可针对仅IE6和7,您可以使用它来防止此规则在所有其他浏览器中影响打印页面:http://briancray.com/posts/target-ie6-and-ie7-with-only-1-extra-character-in-your-css/

我需要设置页面的上下边距,因为第二页及以后的页面顶部和底部没有间距。这是问题所在,许多打印机之间的页面之间有几行无法打印出来。 - Alex Cube
据我所知,这在IE7中无法完成。然而,考虑到IE7的市场份额大约为4%(http://www.quirksmode.org/blog/archives/2011/12/ie_market_share.html),因此您至少会拥有适用于> 90%用户的功能。如果您需要使其与IE7兼容,则可能更适合使用PDF导出。 - Levi Botelho

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接