ScreenshotNeo

BlogHTML to image & PDF

Why Does Chrome Print to PDF Change the Website Layout

Chrome uses print styles and page settings to create PDFs, so a page can look different from its screen view. Here’s how to find the cause and what to check.

By the ScreenshotNeo team4 October 20267 min read

Chrome’s Save to PDF output uses print rendering, not a pixel-for-pixel copy of the screen. A page can look different because the site applies print-specific CSS, the content must fit paper and break across pages, or Print Preview settings change scaling, margins, backgrounds, or headers and footers. The exact cause depends on the page and your settings.

If you only need a PDF of what is visible on screen, use a screenshot workflow. If you maintain the site, inspect its print styles and page rules first.

1. What changes when Chrome makes a PDF

Chrome renders a page for a paged medium. That means the output has a paper size, printable area, margins, and page boundaries. Content may be split across pages; as Chrome for Developers puts it, “When content is printed it is fragmented into as many pages as needed to contain it.”

Websites can also provide a different design for printing. The CSS print media type and @media print rules can hide navigation, change colors or font sizes, or rearrange widths. An @page rule can set page size, orientation, and margins. Browser Print Preview settings are a separate source of changes.

2. Check Print Preview settings first

  1. Open the page and choose Print (or press Ctrl+P on Windows/Linux, ⌘+P on macOS).
  2. Note the selected destination, paper size, orientation, margins, and fit or scaling setting. Some labels and available choices vary by operating system and destination.
  3. If colors or background images are missing, enable Background graphics, if that option is available.
  4. Check whether Headers and footers are enabled. Browser-added title, URL, date, or page information can occupy margin space or make a page feel different.
  5. Change one setting at a time and compare the preview. This helps distinguish a browser setting from the website’s print rules.

Very small or zero margins can leave too little room for browser-added headers and footers, which Chrome may omit when there is not enough space. Since Chrome 131, site authors can also use CSS page margin boxes for their own content in the page margins.

3. Diagnose print CSS on a site you maintain

  1. Open Chrome DevTools and open the command menu with Ctrl+Shift+P or ⌘+Shift+P.
  2. Search for Show Rendering and open the Rendering panel.
  3. Set Emulate CSS media type to print.
  4. Inspect the elements that move, disappear, or change. Look for linked print stylesheets, @media print, and @page rules.
  5. Compare with screen media and then with Print Preview. DevTools emulation helps expose print-only CSS; Print Preview additionally reveals the effects of page size, margins, scaling, and browser options.

For example, a site might intentionally simplify navigation and use a readable paper width:

@media print {
  nav,
  .cookie-banner,
  .chat-widget {
    display: none !important;
  }

  main {
    width: auto;
    max-width: none;
    color: #000;
    background: #fff;
  }
}

@page {
  size: A4 portrait;
  margin: 15mm;
}

This is a minimal illustration, not a universal print stylesheet. Test the rules against your content, browser versions, and required paper sizes.

4. Understand common layout differences

What you see Likely mechanism What to check
Navigation, buttons, or widgets disappear Print CSS may hide screen-only controls Emulate print in DevTools; inspect @media print and linked print stylesheets
Columns become narrow or stack differently Print width and paper geometry differ from the screen viewport Paper size, orientation, margins, scaling, and print-specific widths
Content moves to another page or leaves blank space Content is fragmented at page boundaries; page-break rules or element sizes can affect placement Preview page boundaries; inspect print styles and forced break rules
Background colors or images are absent Background graphics may be disabled in the browser’s print settings Enable Background graphics and check whether the page’s print styling changes backgrounds
Unexpected title, URL, date, or page numbers appear Browser headers and footers may be enabled; page margin content can also come from site CSS Toggle browser headers and footers, inspect margins, and check CSS page margin boxes
Text or images look larger or smaller Fit/scaling, paper dimensions, margins, or print-specific font rules Compare scaling settings and inspect print media styles

5. Fix print layout when you own the page

  • Set intentional page geometry. Use @page for a suitable size, orientation, and margin, and check the resulting printable area.
  • Choose what belongs on paper. Hide controls that have no printed purpose, but keep essential labels, links, and context.
  • Design for fragmentation. Avoid assuming a screen section will remain together on one sheet. Use page-break controls only where they improve the document, and test long and short content.
  • Check color dependencies. Do not rely on background graphics to convey essential information; users may leave that browser option off.
  • Test representative content. Include long pages, tables, large images, headings near page boundaries, and content with variable length.
  • Check in Chrome’s print emulation and actual Print Preview. Emulation exposes CSS; preview checks the page settings and PDF result.

Print CSS is page-specific. A rule that improves an article may break a table-heavy report, so validate the templates and content your site actually serves.

6. When you do not control the website

First try the paper size, orientation, margins, scaling, background graphics, and header/footer options in Print Preview. If a site’s print stylesheet is responsible, browser settings may not override its CSS. You can report the issue to the site owner or use a screenshot workflow when the goal is to preserve the visible page rather than create a paginated document.

7. Or skip the browser setup

For a screenshot of a page, ScreenshotNeo returns an image or PDF from one API request. Its API can also produce PDF output with paper size, margins, orientation, and page ranges. See the ScreenshotNeo API documentation for request options. These examples save the returned image response as a WebP file:

cURL

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

Python

import requests

r = requests.get(
    "https://api.screenshotneo.com/v1/shot",
    params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"},
    timeout=90,
)
r.raise_for_status()
open("shot.webp", "wb").write(r.content)

Node.js

const q = new URLSearchParams({
  access_key: 'YOUR_API_KEY',
  url: 'https://stripe.com'
});
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
if (!res.ok) throw new Error(`Screenshot request failed: ${res.status}`);
await import('node:fs/promises').then(fs => fs.writeFile('shot.webp', Buffer.from(await res.arrayBuffer())));

ScreenshotNeo accepts cookie and consent banners and removes more than 60 known consent platforms, newsletter popups, and chat widgets before capture; each cleanup step can be turned off. Bot checks, blank pages, timeouts, failed loads, and cache hits cost nothing, and response headers report the page verdict and billing status. An MCP server provides take_screenshot, get_page_info, and capture_pdf tools for Claude, Cursor, and other MCP clients. The free plan includes 1,000 shots per month without a card; paid plans start at $5 for 3,000 shots. The product and full feature list are at ScreenshotNeo.

Sign up free for 1,000 screenshots a month, no card required.

8. Troubleshooting checklist

Symptom Cause to investigate Fix or next step
Print preview still looks unlike the screen Active print stylesheet or @media print Use DevTools print emulation and inspect matched styles and linked stylesheets
Layout is consistently clipped or scaled oddly Paper size, orientation, margins, or fit setting Adjust one setting at a time and recheck the preview
Background is white or imagery is missing Background graphics are disabled, or print CSS changes the background Enable the setting, then inspect the print rules
Footer or page information is missing Headers and footers are off, or there is insufficient margin space Enable headers and footers or allow adequate margins; inspect site-defined margin content separately
Content splits at an awkward point Normal page fragmentation or print break rules Inspect page boundaries and adjust author CSS where you control the page
DevTools looks right but the PDF does not Emulation shows CSS behavior, while Print Preview adds destination and page-setting effects Compare the same URL in Print Preview and record the selected options and destination

If you need a specific diagnosis, record the URL, Chrome version, operating system, destination, paper size, and Print Preview settings. Without those details or the page CSS, the title alone cannot identify the exact rule or setting.

9. Performance, reliability, and cost

Chrome’s built-in print workflow avoids an API account or per-capture service charge, but results depend on the page’s print CSS, browser settings, destination, and content. For repeatable site-owned PDFs, maintain and test the print stylesheet. For repeated captures through ScreenshotNeo, cache TTLs are configurable, bulk capture supports up to 100 URLs per call, async jobs support signed webhooks, and a usage API is available. Only clean shots are billed; consult the product’s current plan page for plan details.

10. FAQ

Does Chrome print the same pixels I see on screen?

No. It renders for print media and paged paper, and print styles and browser settings can change the result.

Can I force a website to print exactly as it appears?

Not reliably through one browser setting. The page may have print CSS; if you own it, inspect and adjust those rules. A screenshot is a better fit when you need a visual record of the screen layout.

Why do headers and footers disappear when I reduce the margins?

Chrome may omit browser-added headers and footers when there is not enough margin space. Site-authored page margin content is a separate mechanism.

Does every site have a print stylesheet?

No. A page may use general styles in print mode, a linked print stylesheet, or explicit print rules; inspect the page to determine which applies.

Sources