What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Chromium honors break-inside: avoid on table sections as a request to keep content together when layout permits; it is not a guarantee that an oversized row or section will fit on one page. For printable tables, use semantic table groups, apply break avoidance selectively, and verify the pages produced by the Chromium browser and print or PDF path your readers will use.

How Chromium handles table page breaks

Printing is a form of CSS fragmentation: the browser divides content among pages, which act as fragmentainers. Chromium’s LayoutNG block-fragmentation work initially shipped in Chrome 102, according to Chrome for Developers’ fragmentation deep dive. The precise result for a table still depends on its structure, available page space, and print environment.

There is direct, recent implementation evidence about table sections. On February 11, 2026, a Chromium source change corrected the expected result for table-page-break-inside-avoid-8-print.html: the test had incorrectly expected break-inside: avoid on a table section to be disregarded. Chromium added a reference test and corrected that expectation. This shows that the section’s avoidance constraint matters to Chromium’s layout; it is not a full support matrix for every table, release, operating system, or print configuration. See the Chromium source change.

Which CSS property should you use?

Use break-inside for current CSS. Its avoid value requests that a break not occur inside the element. The property can apply in fragmentation contexts, including pages; the relevant values are defined in the CSS Fragmentation Module Level 4. The legacy page-break-inside property remains an alias for compatibility, as documented by MDN. The older CSS 2.1 paged-media text describes avoiding a page break and allows user agents to apply page-break properties to table rows.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

An avoidance value is a constraint, not a way to make content smaller or guarantee that any amount of content fits on a page. A row taller than a page cannot be kept intact within that page’s available area. The actual outcome for long rows and groups should be checked in rendered output.

Where to apply break avoidance

Start with semantic markup: put column headings in <thead> and data rows in <tbody>. Add avoidance only where splitting the content would harm readability. These common scopes express different intentions:

Scope Example Practical trade-off
Individual row tr { break-inside: avoid; } Targets a single record or line of related cells. A row that cannot fit in the available page space still cannot be kept intact there.
Table section tbody { break-inside: avoid; } Asks the browser to keep a row group together. Chromium’s February 2026 test correction shows this constraint matters, but it does not establish that a section of arbitrary height will stay on one page.
Whole table table { break-inside: avoid; } Can conflict with a table that spans pages: the requested scope may exceed available space. Avoid applying it broadly without checking the result.

These are examples of CSS scope, not a guarantee of identical behavior across Chromium builds or other browsers. The standards define break constraints; they do not promise that every constraint can be satisfied when content and page dimensions conflict.

Do table headers and footers repeat on later pages?

Semantic <thead> and <tfoot> groups express the usual intent for column headings and table footers. The CSS Table Module Level 3 specifies conditions for repeating header and footer rows when a table spans pages; it is not an unconditional promise for every table layout.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Among the specification’s conditions, the page must be the table’s fragmentainer, the header or footer must have break avoidance, the group’s required height must remain within the stated limits (up to one quarter of the page height for each), and repetition must not cause a row to appear twice on the same page. User agents may extend repetition to other fragmentation contexts, such as columns, but the specification does not require that extension. Verify repeated headings in the actual output rather than assuming every configuration will repeat them.

Print CSS starting point

This conventional print rule gives table groups explicit display roles and asks the browser to avoid splitting individual rows:

@media print {
  thead { display: table-header-group; }
  tfoot { display: table-footer-group; }
  tr { break-inside: avoid; page-break-inside: avoid; }
}

The modern property is break-inside; the legacy declaration is included only for compatibility. Explicit group display values communicate the intended header and footer roles, but the CSS Table specification’s conditions and Chromium’s rendered output still determine what happens in a particular case.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

How to test the result

Check both print preview and the resulting PDF using the Chromium version and print path relevant to your readers. Vary the table and page conditions that can expose a bad break:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • Short rows, a row nearly as tall as a page, and a row taller than a page.
  • A table that begins close to the bottom of a page.
  • The intended paper size, page margins, and print scale.
  • Browser-generated headers and footers enabled and disabled.

Chrome for Developers notes that page margins and browser headers and footers affect printable space, and that users can turn automatic browser content off in the print dialog. Its article also describes Chromium’s default-page-layout caveat: automatic content on later pages can be affected when the first page lacks room. CSS margin-box content became available in Chrome 131, according to the same Chrome for Developers article on print margins. These surrounding print settings can change the space available to a table, but they do not determine whether a row’s break-avoidance constraint is honored.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.