120

我想删除打印在页面底部的 URL。

喜欢:

yomari.com/.../main.php?sen_n

如何省略或防止打印?

更具体地说,有什么方法可以在打印网页时阻止页面 URL、日期和页面标题一起打印?

4

22 回答 22

147

以下代码示例将为您工作,

<style type="text/css" media="print">
@page {
    size: auto;   /* auto is the initial value */
    margin: 0;  /* this affects the margin in the printer settings */
}
</style>

查看有关从页面禁用浏览器打印选项(页眉、页脚、边距)的答案?

@page 的规范

于 2013-02-20T09:05:55.960 回答
49

我在浏览器端本身发现了一些东西。

试试这个步骤。这里我提到了在所有三个主要浏览器中禁用页眉和页脚的步骤。

Chrome 单击浏览器右上角的菜单图标。单击打印。取消选中选项部分下的页眉和页脚。

Firefox 单击浏览器左上角的 Firefox。将鼠标放在打印上,单击页面设置。单击边距和页眉/页脚选项卡。将页眉和页脚下的每个值更改为 --blank--。

Internet Explorer 单击浏览器右上角的齿轮图标。将鼠标放在打印上,然后单击页面设置。将页眉和页脚下的每个值更改为 -Empty-。

于 2016-04-13T12:40:11.820 回答
18

Having the URL show is a browser client preference, not accessible to scripts running within the page (let's face it, a page can't silently print themselves, either).

To avoid "leaking" information via the query string, you could submit via POST

于 2009-02-25T09:18:05.103 回答
15

如果您使用下面的代码为页面设置页边距,则打印页面中会省略页眉和页脚。我已经在 FireFox 和 Chrome 中对此进行了测试。

<style media="print">
 @page {
  size: auto;
  margin: 0;
       }
</style>
于 2016-10-16T06:10:38.707 回答
13

这对我有帮助: 打印没有链接的页面

@media print {
    a[href]:after {
        content: none !important;
    }
}
于 2017-12-18T09:41:41.833 回答
11

浏览器问题,但可以通过以下方式解决:

<style type="text/css" media="print">
      @media print
      {
         @page {
           margin-top: 0;
           margin-bottom: 0;
         }
         body  {
           padding-top: 72px;
           padding-bottom: 72px ;
         }
      } 
</style>
于 2018-01-25T09:38:35.917 回答
8

我正在告诉您有关 Mozilla Firefox 的信息(我希望它在其他浏览器中也应该是相同的方式)。

单击Firefox 菜单,转到打印,从打印的子菜单中选择页面设置。屏幕上会弹出一个弹出窗口,转到“边距和页眉/页脚” 选项卡。

在打印前根据要求为页眉/页脚选择“空白” 。您可以检查预览以进行确认。

我希望这将有所帮助。

于 2013-11-19T09:26:35.400 回答
4

现在,您可以使用history API在打印前修改 URL,然后改回:

var curURL = window.location.href;
history.replaceState(history.state, '', '/');
window.print();
history.replaceState(history.state, '', curURL);

但是您需要制作一个自定义PRINT按钮供用户单击。

于 2017-12-15T06:02:26.457 回答
3

您可以通过浏览器设置删除打印文档上显示的 url。您只需单击文件->页面设置->页眉和页脚将所有内容设置为空白。如果有,您只需从页脚文本框中删除 &U。希望这会帮你

于 2012-01-18T06:28:19.790 回答
2

I do not know if you are talking about a footer within your actual graphic or the url the print process within the browser is doing.

If its the url the print process is doing its really up to the browser if he has a feature to turn that off.

If its the footer information i would recommend using a print stylesheet and within that stylesheet to do

display: none;

For the particular ID or class of the footer.

To do a print stylesheet, you need to add this to the head.

<link rel="stylesheet" type="text/css" href="/css/print.css" media="print" />
于 2009-02-25T09:18:15.853 回答
2

这对我使用 jquery 来说很好用

<style>
  @media print { @page { margin: 0; } 
   body { margin: 1.6cm; } }
</style>
于 2020-04-14T02:56:14.793 回答
2
@media print { a[href]:after { content: none !important; } }
于 2018-10-08T13:13:05.317 回答
1

在谷歌浏览器中,这可以通过将边距设置为 0 来完成,或者如果它打印出时髦,然后调整它以将不需要的文本推送到页面的不可打印区域。我试过了,它有效:D

在此处输入图像描述

于 2015-01-14T07:53:44.723 回答
1

在 Chrome 57 上,如果您可以控制需要打印的 HTML 页面(在我的情况下,我需要打印一个 3x1 英寸的小标签),以下内容对我有用:

  • 从标题中删除 HTML 标题元素(如果该页面确实不需要标题,则暂时使用 jquery 或永久)
  • 如@Chamika Sandamal 所述,将@page 页边距设置为0

这导致打印的页面仅包含正文,没有 URL,没有页面 #s 等。

于 2017-05-03T01:19:26.930 回答
0

I would agree with most of the answers saying that its a browser settings but still you can achieve what you want via COM. Keep in mind that most browsers will still have issue with that and even IE will raise the COM security bar to users. So unless its not something you are offering within organisation, don't do it.

于 2009-02-25T11:13:11.287 回答
0

我也有同样的问题。我想知道是否可以通过 jquery 插件创建用于打印的 HTML:http ://www.recoding.it/?p=138

然后将 HTML 发送到 php 脚本(使用 ajax 调用),使用http://www.xhtml2pdf.com/http://code.google.com/p/wkhtmltopdf/生成 pdf 。

之后可以显示 pdf(通过设置适当的内容类型和直接渲染)或通过 http-Redirect 显示到生成的 pdf。

pfd_for_printing-folder 中生成的 pdf 文件可以作为缓存,每天被作业删除一次。

于 2010-11-25T22:48:42.780 回答
0

--print-to-pdf-no-headerChrome headless 现在支持从打印的 PDF 文件中删除页眉和页脚的额外选项

于 2020-12-30T16:48:56.183 回答
0
<style type="text/css" media="print">
  @page {
    size: auto;  
    margin: 0;  
  }
</style>
//now set manual padding to body
<style>
  body{
    padding-left: 1.3cm;
    padding-right: 1.3cm; 
    padding-top: 1.1cm;
  }
</style>
于 2018-07-14T12:42:24.940 回答
-1

也许你可以试试 chrome(也可能是 Safari)

当我在 OSX 上使用 Google Chrome 打印到 pdf 时,页眉和页脚中的 url 和页码不可见。

抱歉,不确定这是否适用于 Windows

于 2011-07-23T05:07:23.330 回答
-2

我有一个技巧可以将它从 Firefox 的打印页面中删除。用这个:

<html moznomarginboxes mozdisallowselectionprint>

在 html 标签中,您必须使用moznomarginboxes mozdisallowselectionprint. 我相信它会对你有很大帮助。

于 2015-01-23T13:52:48.943 回答
-2

这将是最简单的解决方案。我尝试了互联网上的大多数解决方案,但只有这对我有帮助。

@print {
    @page :footer {
        display: none
    }

    @page :header {
        display: none
    }
}
于 2019-03-08T18:06:39.857 回答
-2
@media print {
    #Header, #Footer { display: none !important; }
}

检查此链接

于 2018-06-13T04:20:10.220 回答