从HTML进行横向打印

从HTML进行横向打印,第1张

从HTML进行横向打印

在CSS中,您可以设置@page属性,如下所示。

@media print{@page {size: landscape}}

@page是CSS 2.1规范的一部分,但是

size
问题的答案并未突出显示[@Page{size:landscape}是否已过时?:

CSS 2.1不再指定size属性。CSS3 Paged Media模块的当前工作草案确实指定了它(但这不是标准的或不可接受的)。

如前所述,size选项来自CSS 3DraftSpecification。从理论上讲,可以将其设置为页面大小和方向,尽管在我的示例中省略了页面大小。

该支持与在Firefox中开始提交的错误报告非常混杂,大多数浏览器不支持该报告。

它似乎可以在IE7中使用,但这是因为IE7会记住用户在打印预览中最后一次选择横向或纵向的方式(仅重新启动浏览器)。

本文确实提出了一些建议的解决方法,使用Javascript或ActiveX将密钥发送到用户浏览器,尽管它们不是理想选择,并且依赖于更改浏览器的安全设置。

或者,您可以旋转内容而不是页面方向。这可以通过创建样式并将其应用于包含这两行的主体来完成,但这也存在一些缺点,从而造成许多对齐和布局问题。

<style type="text/css" media="print">    .page    {     -webkit-transform: rotate(-90deg);      -moz-transform:rotate(-90deg);     filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);    }</style>

我发现的最终替代方法是在PDF中创建横向版本。您可以指向,以便当用户选择打印时它会打印PDF。但是我无法在IE7中自动打印。

<link media="print" rel="Alternate" href="print.pdf">

总之,在某些浏览器中,使用@pagesize选项相对容易,但是在许多浏览器中,没有确定的方法,这取决于您的内容和环境。这也许就是为什么Google文档在选择打印后会创建PDF,然后允许用户打开并打印该PDF的原因。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4893439.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-12
下一篇 2022-11-12

发表评论

登录后才能评论

评论列表(0条)

保存