Plainwork

Plainwork / CV Sheets / Save an HTML CV as a PDF: print settings that work

Save an HTML CV as a PDF without surprises

If you keep your CV as an HTML file, the browser can turn it into a PDF with real, selectable text. A few lines of CSS and four print settings decide whether it comes out as one tidy page or with a stray header, odd margins and an orphaned last line. Here is what to set and how to check the result.

The CSS that does the work

Put this at the end of your stylesheet, after your own rules. It asks the browser for A4 paper (use Letter in the US and Canada), a fixed margin, and printed colours. The print block uses html body .sheet so it still wins over a plain .sheet rule if you place it elsewhere:

@page { size: A4; margin: 14mm; }
html { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.job, .skills { break-inside: avoid; }
h2 { break-after: avoid; }
@media print {
  html body { margin: 0; background: #fff; }
  html body .sheet { max-width: none; margin: 0; padding: 0; box-shadow: none; }
}

The last block removes the on-screen "paper" shadow, margin and padding when printing, so the page margin comes from @page alone and not from both. If you put it above your own .sheet rule with the same specificity, your screen rule would win and the shadow and padding would come back in the PDF, which is why it goes last. Rename .sheet to whatever your outer wrapper is called.

The print dialog, step by step

  1. Open the file in Chrome or another Chromium browser and press Ctrl+P (Cmd+P on a Mac).
  2. Set the destination to Save as PDF.
  3. Choose the paper size that matches your @page rule.
  4. Leave margins on Default so the CSS margin is used.
  5. Untick Headers and footers. Otherwise the browser prints the page title, address and date around your CV.

Check the PDF before you send it

  • Page count. A first CV should usually fit on one page. If a bullet spills onto page two, shorten the longest bullets first.
  • Text order. Select all in the PDF and paste into a plain text editor. Your name should come first, then your summary, then your jobs from newest to oldest. If the pasted text is jumbled, the layout is hiding text order from parsers.
  • Spaced-out headings. In our tests, section headings with wide letter-spacing came out of the PDF as separate letters ("S U M M A R Y"). Keep letter-spacing off headings.
  • Links. Click the email address and website in the PDF. In the Chromium print-to-PDF route we tested, they stay clickable.

What we tested, and what we did not

We printed our templates with headless Chromium 141 on Linux, in A4 and Letter, and read the page counts, the extracted text and the link annotations from the resulting PDFs. We did not test Firefox or Safari, and we cannot say how any employer's applicant tracking system will read a file. Treat the checks above as a way to catch problems early, not as a guarantee.

If you would rather start from finished designs, CV Sheets is a $9 kit of six single-file templates in A4 and Letter that already include these rules, and the live demo lets you print two of them first.

More from the catalogue

Other small tools

See everything →