【问题标题】:How to control print font size如何控制打印字体大小
【发布时间】:2015-12-02 11:42:31
【问题描述】:

我允许我的用户打印,但输出太大(我必须在打印对话框中手动调整到大约 60%)。我使用 css 媒体查询(如下)来控制内容,并尝试更改 html, body{} 的字体大小而不更改输出字体大小。打印到 Adob​​e PDF 打印正确

任何想法我做错了什么?

我的打印链接:

<a href="#" onclick="window.print(); return false;"></a>

我的 CSS:

@media print {
    body * {
        visibility: hidden;
    }
    .printme, .printme * {
        visibility: visible;
    }
    .printme {
        position: absolute;
        left: 0;
        top: 0;
    }
    .printme, .printme:last-child {
        page-break-after: avoid;
    }

    .display-none-on, .display-none-on * {
        display: none !important;
    }
    html, body {
        height: auto;
        font-size: 12pt; /* changing to 10pt has no impact */
    }

}

【问题讨论】:

  • 这些代码有效...我认为问题是缓存...尝试在私人模式浏览器中打开...
  • 因为 CSS 仅适用于打印?在屏幕上查看时不是?
  • 我使用的是 Firefox,但尝试在 Chrome 中打印,结果相同。
  • 如果你有外部 CSS,你应该这样做,它将被保存在你的缓存中。清除缓存。 Firefox 可以设置为在您关闭浏览器时执行此操作。
  • 是的,但我想知道它从哪里提取了巨型字体大小。我根本没有玩过 css 字体大小,否则我会马上想到缓存。感谢您的帮助。

标签: javascript css printing media-queries font-size


【解决方案1】:

终于弄清楚了,原因有很多。主要的是我还需要为包含文本的 div 设置字体大小。在主 CSS 中,我将 body 字体大小设置为 62.5%,将 div 字体大小设置为 130%。当我将 @media print{} 的 body font-size 设置为 12pt 时,它继续使用 130% div 设置,因此打印得非常大。

我相信我通过更改正文字体大小来调整字体大小的努力是有缺陷的,因为我缩小了我的 css,并且可能在每次更改后都忘记了缩小。

【讨论】:

  • 为什么它继续使用 130% div 设置?
  • @Alex78191 - 即使正文字体大小发生更改,页面也会使用 div 字体大小(设置为 130%)。原来在css文件中修改div字体大小的时候,测试的时候没记得缩小css,所以修改没有生效。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-07-07
  • 2011-11-29
  • 1970-01-01
  • 1970-01-01
  • 2016-05-24
  • 2012-05-05
  • 1970-01-01
相关资源
最近更新 更多