如何使用 CSS 禁用浏览器打印选项(页眉、页脚、页边距)?


我们可以仅通过 CSS 来控制打印预览页面的页眉、页脚和页边距,甚至可以实现分页媒体的所需布局和方向。我们将使用 `@page` 指令来实现我们的目标。

在浏览器中预览打印页面时,我们会看到一些额外的页面信息,例如页面标题、页面预览日期和时间以及预览中的页码,这些都位于页面的页眉和页脚中。我们还会看到应用于页面预览媒体的一些额外页边距。

语法

@media print {
   @page {
      /* Desired CSS */
   }
}

解释

在这种方法中,我们将在 `@media print` 规则内使用 `@page` at-rule(或指令),CSS 提供的该规则允许我们对分页媒体应用格式,其中包括屏幕、纸张等上可见的页面。

借助 `@page` 指令,我们可以控制打印页面的布局、设计、页边距、方向,甚至特定页面的设计。该指令广泛用于设计离散(分页)媒体。

分页媒体与通常的连续媒体(如网站)的不同之处在于,在分页媒体中,如果内容溢出,它将被分成单独的页面。我们仍然可以借助 `@page` 指令的伪类来控制页面的布局。

示例 1

在这个示例中,我们将通过在 `@page` 指令内将页边距设置为“0”来删除分页媒体中可见的页眉、页脚和额外页边距。

<!DOCTYPE html>
<head>
   <meta charset="utf-8">
   <title>How to disable browser print options (headers, footers, margins) from the page with CSS?</title>
</head>
<style>
   @page {
   margin: 0;
   }
</style>
<body>
   <p>
      Lorem ipsum dolor, sit amet consectetur adipisicing elit. Repellat
      magni hic distinctio ea est, recusandae dolores in eum cum velit adipisci
      aperiam non ullam culpa quae maiores dignissimos, tempora, quod exercitationem
      reiciendis molestiae temporibus veniam pariatur quo? Ut similique doloremque
      repudiandae. Maiores iure quam ex. Cumque, laudantium debitis dolorem,
      rerum consequatur tempore dignissimos nostrum officiis nam minima omnis
   </p>
</body>
</html>

按 command + p(在 Mac 上)或 ctrl + p(在 Windows、Linux 上)查看打印预览屏幕

示例 2

在这个示例中,我们将从分页媒体中删除浏览器打印选项,但将在分页媒体屏幕中向 body 元素添加页边距。

<!DOCTYPE html>
<head>
   <meta charset="utf-8">
   <title>How to disable browser print options (headers, footers, margins) from the page with CSS?</title>
</head>
<style>
   @media print {
      @page {
         margin: 0;
      }
      body {
         margin: 2rem;
      }
   }
</style>
<body>
   <p>
      Lorem ipsum dolor, sit amet consectetur adipisicing elit. Repellat
      magni hic distinctio ea est, recusandae dolores in eum cum velit adipisci
      aperiam non ullam culpa quae maiores dignissimos, tempora, quod exercitationem
      reiciendis molestiae temporibus veniam pariatur quo? Ut similique doloremque
      repudiandae. Maiores iure quam ex. Cumque, laudantium debitis dolorem,
      rerum consequatur tempore dignissimos nostrum officiis nam minima omnis
   </p>
</body>
</html>

按 command + p(在 Mac 上)或 ctrl + p(在 Windows、Linux 上)查看打印预览屏幕

结论

在本文中,我们学习了 `@page` CSS 指令,以及如何使用此指令仅使用 CSS 来删除/禁用打印预览中的浏览器打印选项。

更新于:2023年2月22日

3K+ 次浏览

启动您的 职业生涯

完成课程获得认证

开始
广告