TLDR: To save an AI page as a PDF, open it in your browser, press Cmd+P (Mac) or Ctrl+P (Windows), and choose Save as PDF. Turn on Background graphics, set margins to Default, and keep scale at 100%. That fixes most pages. If the PDF still has a dark background, runs off the edge, or slices content in half, the page needs print styles. Ask the AI that built it to add an @media print block with a light background, dark text, full-width layout, hidden buttons, and break-inside: avoid so nothing splits across pages. And before you export anything, ask whether you need a file at all, or just a link people can open and print themselves.
You asked AI for a one-page report, an invoice, a resume, or a pricing sheet, and it built you something genuinely nice on screen. Then you went to save that AI page as a PDF, and what landed in your downloads folder was a dark rectangle with text running off the right edge, a chart cut clean in half, and a “Download” button sitting uselessly in the corner of page two.
This happens to almost everyone, and it is not a mistake the AI made. The page is fine. It was just built for a screen, and a screen and a sheet of paper are very different surfaces. This guide walks through how to save an AI page as a PDF that looks the way the page does, starting with the thirty-second browser fix and moving to the real fix for stubborn pages, which is a short set of print styles you can ask the AI to add for you.
Why does my AI page look broken as a PDF?
A web page is designed for a glowing screen that can be any height, scrolls freely, and loves dark backgrounds because they are easy on the eyes and cheap to render. Paper is the opposite. It is a fixed size, it comes in discrete pages, and a dark background means drowning a sheet in ink.
When you save a screen-first page straight to PDF, four things tend to go wrong:
- The background turns into an ink bomb. A dark theme that looks sharp on a monitor becomes a heavy, hard-to-read, printer-draining page.
- Content runs off the edge. Layouts sized to the browser window, or wide tables and charts, spill past the right margin and get clipped.
- Interactive elements come along for no reason. Buttons, menus, tabs, and hover tooltips have no job on paper, but they still take up space and clutter the layout.
- Everything splits in the wrong places. A card, a table row, or a heading gets sliced across a page break, with the top half on page one and the bottom half on page two.
None of these are hard to fix. You just have to tell the page it is going to be printed, which is exactly what the browser and a print stylesheet do.
The thirty-second fix: print to PDF from your browser
Before you touch anything, try the fastest route. Every modern browser can save a page as a PDF, and the hidden settings in that dialog fix a surprising number of problems.
- Open the page in Chrome, Edge, Safari, or Firefox.
- Press Cmd+P on a Mac or Ctrl+P on Windows.
- Set the destination to Save as PDF (in Safari it is the PDF dropdown in the lower left).
- Open More settings and do three things: turn on Background graphics so your colors and fills survive, set Margins to Default, and keep Scale at 100% or use “Fit to page width” if content is spilling.
That alone gets a lot of clean, simple pages to export correctly. Reports and resumes that use a light background and a normal document layout often need nothing more than this. Try it first, and only reach for the next step if the result is still wrong.
The limitation is that the browser can only work with what the page gives it. If the page is dark, or sized to the window, or full of buttons, the print dialog cannot undo those decisions. For that, the page itself has to know it is being printed.
The real fix: ask AI for print styles
CSS has a feature built for exactly this problem: an @media print block. Any rules inside it apply only when the page is printed or saved as a PDF, and they are invisible on screen. This is how you get a page that looks like a glowing app on a monitor and a clean document on paper, from the same file.
You do not have to write this yourself. The AI that built your page can add it. Go back to the same chat and ask. Here is a prompt you can copy and adapt:
Add a print stylesheet to this page so it saves as a clean PDF.
Inside an @media print block:
- Switch to a white background with dark, high-contrast text.
- Expand the main content to full width and remove any max-height
or fixed viewport sizing so nothing gets clipped.
- Hide anything that only makes sense on screen: buttons, nav,
menus, the dark-mode toggle, and any sticky or floating elements.
- Keep font sizes readable on paper (around 11 to 12pt for body text).
- Do not change anything about how the page looks on screen.
Keep everything in the single HTML file with the styles inlined.Every line is pulling its weight. The white background kills the ink bomb, the full-width rule stops the clipping, hiding the interface removes the clutter, and the last line protects the on-screen design you already like. Because the rules live behind @media print, the screen version is untouched. This is the same discipline that makes a self-contained HTML file so portable: one file, every behavior included.
If the first pass is close but not perfect, treat it like any other revision. One specific note at a time beats a vague “make the PDF better,” the same way it works when you iterate on an AI-generated page.
How do I stop content from getting cut off between pages?
Page breaks are the other half of a clean PDF, and they are the part the browser almost never gets right on its own. By default it will happily cut a card, a chart, or a table row straight down the middle.
CSS has three rules that fix this, and you can ask the AI to apply them to the exact elements that are breaking:
break-inside: avoidkeeps an element from being split across two pages. Use it on cards, figures, table rows, and callout boxes.break-before: pageforces a new page to start before an element. Use it before each major section, or before every item in a list that should start fresh.break-after: avoidkeeps a heading attached to the content below it, so a section title never gets stranded alone at the bottom of a page.
A short follow-up does the job:
In the print styles, keep these from splitting across pages:
- each card, each table row, and each chart should stay whole
(break-inside: avoid)
- start each top-level section on a new page (break-before: page)
- never leave a section heading alone at the bottom of a page
(break-after: avoid on headings)Name the elements that are actually breaking in your PDF, and the model can target them precisely. This matters most for documents with repeating blocks: invoices, pricing sheets, multi-section reports, and anything built on a table. If you are making one of those from scratch, it is worth building the print behavior in from the start, the way the better invoice generators and report layouts do.
Which method should I use?
Different pages need different levels of effort. Here is how the common approaches compare.
| Method | Effort | Looks right | Best for |
|---|---|---|---|
| Screenshot the page | Lowest | Rarely, and it is an image, not a document | Never, for a real PDF |
| Browser Save as PDF | 30 seconds | Often, for simple light pages | Clean reports, resumes, simple docs |
| Browser PDF + print styles | One prompt | Reliably | Dark themes, real layouts, dashboards |
| Print styles + page-break rules | Two prompts | Reliably, even multi-page | Invoices, pricing sheets, long reports |
A screenshot is on that list only to rule it out. It gives you a picture of a page, not a document: text you cannot select, a chart you cannot read when it scales, and only whatever fit on the screen when you captured it. If you want paper, go through the browser’s PDF export, not the screenshot key.
Do you actually need a PDF, or a link?
Here is the question worth asking before you export anything. A PDF freezes your page the second you save it. The totals in that invoice, the numbers in that report, the projects in that portfolio: they are now a snapshot, and the moment anything changes you are generating and re-sending a new file, hoping everyone opens the latest one and not report_final_v3.pdf from last week.
A lot of the time, what you actually want is for someone to see the thing. For that, a live link beats a file on almost every count. The charts stay interactive, the buttons still work, there is exactly one version that is always current, and if the recipient genuinely needs paper, they can save their own clean PDF from their browser, using the very print styles you just added.
This is where VisiblePage fits in. Paste your AI-generated HTML or drop a ZIP of a multi-file project, and you get a live URL in seconds, served fast from the edge, with every interaction intact. You can keep the page public, private, or password-protected, point a custom domain at it, and when something changes you update the same link instead of emailing a new file. Your print styles ride along, so anyone who opens it can save a tidy PDF whenever they need one. If you are weighing the two formats for a specific job, the interactive report versus PDF breakdown goes deeper.
Try it now: Publish your AI-generated HTML with VisiblePage and get a live link that opens anywhere and prints clean.
Frequently asked questions
How do I save an AI-generated page as a PDF?
Open the page in your browser and press Cmd+P (Mac) or Ctrl+P (Windows), then choose Save as PDF instead of a printer. In More settings, turn on Background graphics, set margins to Default, and keep scale at 100%. That handles most pages. If the result still has a dark background or cut-off content, the page needs print styles, which you can ask the AI to add in one follow-up.
Why does my AI page look broken when I save it as a PDF?
Because the page was designed for a glowing screen of unlimited height, and paper is neither. Dark backgrounds turn into ink-heavy pages, content sized to the viewport runs off the edge, interactive elements have nothing to do on paper, and long sections get sliced across page breaks. A print stylesheet tells the browser how to re-lay-out the page specifically for paper.
What is a print stylesheet and how do I get one?
A print stylesheet is CSS inside an @media print block that only applies when the page is printed or saved as PDF. It can swap a dark theme for light, hide buttons and navigation, expand content to full width, and control where pages break. You do not have to write it. Ask the AI that built the page to add a print block, and describe what the PDF should look like.
How do I stop content from getting cut off between PDF pages?
Use the CSS break-inside: avoid rule on elements you do not want split, like cards, table rows, and figures, and break-before or break-after to force a new page before a major section. Ask the AI to apply these to the blocks that are currently being sliced in half, and name them, for example keep each pricing card and each table row together.
Should I send a PDF or a live link?
Send a link by default, and let the recipient make a PDF only if they need a file. A live page keeps every chart, button, and animation working, always shows the current version, and still prints cleanly if someone wants paper. A PDF freezes a snapshot the moment you export it. With VisiblePage you publish the page once and get a URL anyone can open or save as PDF from their own browser.
The short version
Saving an AI page as a PDF goes wrong because the page was built for a screen, not a sheet of paper. Start with the browser: Cmd+P or Ctrl+P, Save as PDF, Background graphics on, Default margins. If that is not enough, ask the AI to add an @media print block with a light background, dark text, full width, hidden buttons, and break-inside: avoid so nothing splits across pages. Then ask the real question, whether you need a frozen file at all, or a live link people can open, interact with, and print for themselves.