Add support for page margin boxes, when printing a web document, or exporting it as PDF. @page margin boxes allows an author to define the contents in the margin area of a page, for instance to provide custom headers and footers, rather than using the built-in headers and footers generated by the browser. A margin box is defined via an at-rule inside a CSS @page rule. There are 16 rules defined, one for each page margin box. There's one margin box for each of the 4 corners on the page, and three (start, middle, end) for each of the 4 sides. The appearance and the contents of a margin box are specified with CSS properties inside the at-rule, including the "content" property. Counters are also to be supported, for page numbering. The specification defines two special counter names: "page" for the current page number, and "pages" for the total number of pages.
Without this feature, authors have no means of providing their own headers, footers, or, say, a logo in one corner of every page, when printing, if the built-in CSS layout engine of the browser is to be used. The author would need to take full control and responsibility of the page layout on their own, by e.g. setting zero margins on every page, and manually create headers and footers near the edges, and manually lay out the actual contents of the document into e.g. one canvas per page, and perform all the layout on their own via some sort of advanced javascript layout library. Adding support for @page margin boxes solves this, by letting the author specify what to place into the various portions of the page area, and let the browser's layout and pagination engine do the job.
Explainers: https://github.com/mstensho/page-margin-boxes