Contact emailsmsten...@chromium.org Explainerhttps://github.com/mstensho/unprintable-areas
Specificationhttps://drafts.csswg.org/css-env-1 Summary Printers usually have a small area at each of the four edges of a sheet of paper that they are not capable of marking reliably, usually due to the printer’s paper handling mechanism. The default page margins are expected to be bigger than these areas, but if authors set margins on their own, and even want to add @page margin boxes (e.g. for custom headers and footers), they need a way of telling where it's safe to print and not. The CSS environment variable env(safe-printable-inset) can be used to obtain this information. It will be the inset of the largest unprintable area. Although some printers don't have the same unprintable area inset along each of the four paper edges, printers may rotate the print output at their own discretion. The user agent cannot make assumptions about which edge (will it be the long or short edge?) is going to be fed first into the printer. Therefore, only one value can be reliably provided here: The larger of these four values. Blink componentBlink>Layout>Printing <https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3ELayout%3EPrinting%22> Motivation The browser itself has access to information about unprintable areas, so that it can place UA-generated headers and footers within the printable area, and also make the default page margins large enough to prevent loss of content. But once authors want to set their own page margins, or add page margin boxes (for e.g. custom headers and footers), the problem becomes clear, since this information isn't exposed via CSS. When developers want to place content near the paper sheet edges, be it due to small @page margins or page margin boxes (for custom headers and footers, for instance), without this change, the author would either have to hope for the best, or add some "reasonably large" margin to steer clear of potentially unprintable regions on the sheet. Initial public proposalhttps://github.com/w3c/csswg-drafts/issues/11395 TAG reviewhttps://github.com/w3ctag/design-reviews/issues/1115 TAG review statusPending Risks Interoperability and Compatibility None *Gecko*: No signal ( https://github.com/mozilla/standards-positions/issues/1258) *WebKit*: No signal ( https://github.com/WebKit/standards-positions/issues/519) *Web developers*: No signals *Other signals*: WebView application risks Does this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications? None Debuggability None Is this feature fully tested by web-platform-tests <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md> ?No Need to add WPT support for this. For example: A: Define a default printable inset and/or B: Add a META tag for it Flag name on about://flagsNone Finch feature nameCSSSafePrintableInset Requires code in //chrome?False Tracking bughttps://issues.chromium.org/issues/368070327 Estimated milestones No milestones specified Link to entry on the Chrome Platform Status https://chromestatus.com/feature/5515971464527872?gate=5172211375407104 This intent message was generated by Chrome Platform Status <https://chromestatus.com/>. -- You received this message because you are subscribed to the Google Groups "blink-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscr...@chromium.org. To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAKWZFm6j2Zg0UC78mnzF%2BRzeycQXzTPU_YpEZtAYAYQWNvgR8A%40mail.gmail.com.