I wish they'd rethink how printers work. Sometimes you have to make a hard copy, but browsers and printing is a pain. Random thoughts of an idiot.
- PN element: Displays a page number. Has class and id attributes, but also has an "of" attribute that takes the id of another element as an argument (just as label's for attribute does) and causes the PN tag to give the page number of the element specified. There is no closing tag of PN, and it is an inline element.
- PT: Displays the total pages of the document.
- PAGEHEAD The header of printouts. By default it is position fixed top 0, left 0 (see CSS below) and only displays in the print media, being display: none; in screen media.
- PAGEFOOT As above, but the footer.
Implemenation of CSS 2's 5 print attributes would be a GREAT start!! These attributes are in addition
- :nth-page, first-page, last-page These psuedo-selectors works on pages the way nth-child works.
- position: pagefixed An element that is pagefixed appears on all pages.
- background: If called out within the context of media: print the background will be printed. An unspecified media background or a screen background will continue to not be printed.
- background-grayscale: A substitute for grayscale printing. So background-grayscale-color: #ee will set the background to 999 on a black & white printout. Unlike other color arguments, graysacle only accepts one or two hex numbers as giving it a full 24-bit hex argument is non-sensical.
- grayscale: Again, a substitute for grayscale printing, this time replacing the color attribute if the printer is set to print in black & white.
Anything else that could be done to make HTML / CSS printing less of a chore?