You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1526 lines
70 KiB
1526 lines
70 KiB
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
<title>CSS Print Profile</title>
|
|
|
|
<style type="text/css">
|
|
|
|
th { background: #005A9C; color: white; }
|
|
tr.yes { background: aqua; }
|
|
tr.no { background: transparent; }
|
|
tr.enh { background: yellow; }
|
|
.new { color : blue } /* added during 11/4 pwg review */
|
|
.tableNotes { font-size: 75%;font-style: italic; margin-bottom: 0in; padding-bottom: 0}
|
|
.aTableNote { font-size: 75%; margin:0; margin-left: .125in; padding: 0;}
|
|
.editorial { display: block; font-family: arial, helvetica, sans-serif;
|
|
font-size: 80%;
|
|
margin-left: .5in; margin-right: 1in ; padding: 0.125in;
|
|
background: #FFFFDD ;
|
|
}
|
|
|
|
.editorial:after { content: "Ed."}
|
|
div.editorial pre {padding: 0; margin: 0 0 0 0;color:maroon;
|
|
font-family: helvetica, sans-serif; font-size:90%;}
|
|
table.keys td { vertical-align:top; margin-top: 5px;}
|
|
.RFC2119 { text-transform: lowercase; font-style: italic }
|
|
em em.RFC2119 { text-transform: lowercase; font-style: normal }
|
|
</style>
|
|
<link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/TR/W3C-WD.css" />
|
|
</head>
|
|
|
|
|
|
<body>
|
|
<div class="head" >
|
|
<p><a href="http://www.w3.org/"><img height="48" width="72" alt="W3C" src="http://www.w3.org/Icons/w3c_home"/></a>
|
|
</p>
|
|
<h1 id="cssprintprofile">CSS Print Profile</h1>
|
|
<h2 id="workingdraft">W3C Working Draft 13 October 2006</h2>
|
|
<dl>
|
|
|
|
<dt>This version: </dt>
|
|
<dd><a href="http://www.w3.org/TR/2006/WD-css-print-20061013">
|
|
http://www.w3.org/TR/2006/WD-css-print-20061013</a></dd>
|
|
|
|
<dt>Latest version: </dt>
|
|
<dd><a
|
|
href="http://www.w3.org/TR/css-print/">
|
|
http://www.w3.org/TR/css-print/</a></dd>
|
|
|
|
<dt>Previous Version:</dt>
|
|
<dd><a href="http://www.w3.org/TR/2004/CR-css-print-20040225/">
|
|
http://www.w3.org/TR/2004/CR-css-print-20040225/</a></dd>
|
|
|
|
<dt>Editor: </dt>
|
|
<dd>Melinda Grant, Hewlett-Packard Company </dd>
|
|
</dl>
|
|
|
|
<p class="copyright"><a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © 2006 <a href="http://www.w3.org/"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>®</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>, <a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>, <a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>, <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a> and <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> rules apply.</p></div>
|
|
<hr title="Separator for header" />
|
|
|
|
<h2 class="no-num no-toc" id="abstract">Abstract</h2>
|
|
<p>This specification defines a subset of <cite>Cascading Style Sheets Level 2, revision 1</cite>
|
|
[<a href="#ref-css21">CSS21</a>] and <cite>CSS3
|
|
Module: Paged Media</cite> [<a
|
|
href="#ref-pgmedia">PAGEMEDIA</a>]
|
|
for printing to low-cost devices. It
|
|
is designed for printing in situations where it is not feasible
|
|
or desirable to install a printer-specific driver, and for situations
|
|
were some variability in the output is acceptable.</p>
|
|
<p>This profile is designed to work in conjunction with <cite>XHTML-Print</cite> [<a href="#ref-XHTMLPrint">XHTMLPRINT</a>] and
|
|
defines a minimum level of conformance as well as
|
|
an extension set that provides stronger layout control for the printing of
|
|
mixed text and images, tables and image collections.</p>
|
|
|
|
<!-- **************************** -->
|
|
<!-- STATUS of DOCUMENT -->
|
|
<!-- **************************** -->
|
|
<h2 class="no-num no-toc" id="status">Status of this Document</h2>
|
|
<!--begin-status-->
|
|
<p><em>This section describes the status of this document at the time of
|
|
its publication. Other documents may supersede this document. A list of
|
|
current W3C publications and the latest revision of this technical report
|
|
can be found in the <a href="http://www.w3.org/TR/">W3C technical reports
|
|
index at http://www.w3.org/TR/.</a></em></p>
|
|
|
|
<p>Publication as a Working Draft does not imply endorsement by the W3C
|
|
Membership. This is a draft document and may be updated, replaced or
|
|
obsoleted by other documents at any time. It is inappropriate to cite
|
|
this document as other than work in progress.</p>
|
|
|
|
<p>The (<a
|
|
href="http://lists.w3.org/Archives/Public/www-style/">archived</a>)
|
|
public mailing list <a
|
|
href="mailto:www-style@w3.org">www-style@w3.org</a> (see <a
|
|
href="http://www.w3.org/Mail/Request">instructions</a>) is preferred for
|
|
discussion of this specification. When sending e-mail, please put the
|
|
text “css-print” in the subject, preferably like this:
|
|
“[<!---->css-print] <em>…summary of
|
|
comment…</em>”</p>
|
|
|
|
<p>This document was produced by the <a href="/Style/CSS/members">CSS
|
|
Working Group</a> (part of the <a href="/Style/">Style Activity</a>).</p>
|
|
|
|
<p>This document was produced by a group operating under the <a
|
|
href="http://www.w3.org/Consortium/Patent-Policy-20040205/">5 February
|
|
2004 W3C Patent Policy</a>. W3C maintains a <a
|
|
href="/Style/CSS/Disclosures" rel="disclosure">public list of any patent
|
|
disclosures</a> made in connection with the deliverables of the group;
|
|
that page also includes instructions for disclosing a patent. An
|
|
individual who has actual knowledge of a patent which the individual
|
|
believes contains <a
|
|
href="/Consortium/Patent-Policy-20040205/#def-essential">Essential
|
|
Claim(s)</a> must disclose the information in accordance with <a
|
|
href="/Consortium/Patent-Policy-20040205/#sec-Disclosure">section 6 of
|
|
the W3C Patent Policy</a>.</p>
|
|
|
|
<!--end-status-->
|
|
<p>This document contains the <abbr title="Cascading Style
|
|
Sheets">CSS</abbr> Print Profile W3C Last Call <a
|
|
href="http://www.w3.org/2005/10/Process-20051014/tr.html#RecsWD"> Working
|
|
Draft</a> of 16 October 2006. The Last Call period ends on 20
|
|
November 2006.</p>
|
|
|
|
<p>Relative to the previous Candidate Recommendation, this version adds two new features (<a
|
|
class="property" href="http://www.w3.org/TR/css3-page/Overview.html#fit">'fit'</a> and <a class="property"
|
|
href="http://www.w3.org/TR/css3-page/Overview.html#fit-position">'fit-position'</a>), synchronizes this profile with
|
|
changes to <a href="http://www.w3.org/TR/xhtml-print/">XHTML-Print</a>, removes redundancies with <a href="http://www.w3.org/TR/css3-page/">CSS3 Module: Paged Media</a>
|
|
and makes miscellaneous
|
|
clarifications and editorial improvements.</p>
|
|
<!-- end of status -->
|
|
|
|
<!-- *************************** -->
|
|
<!-- TABLE OF CONTENTS -->
|
|
<!-- *************************** -->
|
|
|
|
<h2 class="no-toc" id="toc">Table of Contents</h2>
|
|
<div class="contents">
|
|
<ul class="toc">
|
|
<li class="tocline">1. <a href="#section-overview">Overview</a>
|
|
</li>
|
|
<li class="tocline">2. <a href="#section-conformance">Conformance</a>
|
|
<ul class="toc">
|
|
<li class="tocline">2.1. <a href="#s2.1">Enhanced Layout Extension Conformance</a></li>
|
|
</ul>
|
|
</li>
|
|
<li class="tocline">3. <a href="#section-selectors">Selectors</a>
|
|
<ul class="toc">
|
|
<li class="tocline">3.1. <a href="#at-rules">at-rules</a></li>
|
|
</ul>
|
|
</li>
|
|
<li class="tocline">4. <a href="#section-properties">Properties</a>
|
|
</li>
|
|
<li class="tocline">5. <a href="#section-syntax">CSS Syntax</a>
|
|
</li>
|
|
<li class="tocline">6. <a href="#section-assigning">Assigning Property Values, Cascading, and Inheritance</a>
|
|
</li>
|
|
<li class="tocline">7. <a href="#section-mediatypes">Media Types</a>
|
|
</li>
|
|
<li class="tocline">8. <a href="#section-interactions">CSS Print Profile Properties and User Agent interactions</a>
|
|
<ul class="toc">
|
|
<li class="tocline">8.1. <a href="#s.8.1">Nested Floats, Divs, and Absolutely Positioned Boxes </a></li>
|
|
<li class="tocline">8.2. <a href="#s.8.2">Page Breaks</a></li>
|
|
<li class="tocline">8.3. <a href="#s.8.3">Page Size</a></li>
|
|
<li class="tocline">8.4. <a href="#s.8.4">Default Style Sheets</a></li>
|
|
</ul>
|
|
</li>
|
|
<li class="tocline">9. <a href="#section-ack">Acknowledgements</a>
|
|
</li>
|
|
<li class="tocline">A. <a href="#section-references"> References</a>
|
|
<ul class="toc">
|
|
<li class="tocline">A.1 <a href="#section-normref"> Normative References</a></li>
|
|
<li class="tocline">A.2 <a href="#section-informref"> Informative References</a> </li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<!-- ****************** -->
|
|
<!-- OVERVIEW -->
|
|
<!-- ****************** -->
|
|
<h2 id="section-overview">1. Overview</h2>
|
|
<p> All sections of this document are normative unless noted as informative.
|
|
</p>
|
|
|
|
<p>This document specifies a profile of the <cite>Cascading Style Sheets,
|
|
level 2, revision 1</cite> (CSS 2.1) specification [<a href="#ref-css21">CSS21</a>] along with
|
|
the <cite>CSS3 Module: Paged Media</cite> [<a
|
|
href="#ref-pgmedia">PAGEMEDIA</a>].
|
|
</p>
|
|
|
|
|
|
<p>CSS 2.1 specifies how developers can author style sheets for
|
|
presenting documents across multiple devices and media types. While this is very
|
|
important, it is also important that authors have an understanding of what
|
|
features are supported on these different devices. Likewise, it is important
|
|
that similar devices operate in a similar manner. Otherwise, authors could need
|
|
to develop style sheets for each version of each device -- raising the cost of
|
|
content development and decreasing interoperability.</p>
|
|
|
|
<p>
|
|
The CSS Print Profile specifies a conformance profile for
|
|
printing in environments where it is not feasible or desirable to use a
|
|
printer-specific driver. An example of such an environment is printing to
|
|
low-cost printers from mobile phones. The profile identifies a minimum set of properties, values, selectors,
|
|
and cascading rules to support these use scenarios. This profile was designed in
|
|
conjunction with <cite>XHTML-Print</cite> (<a href="#ref-XHTMLPrint">[XHTMLPRINT]</a>)
|
|
for low cost printers that may not have a full-page buffer and that
|
|
generally print from top-to-bottom.</p>
|
|
<p> This profile also contains an enhanced layout
|
|
extension set which supports more exacting page layouts and orientations. These
|
|
features provide sufficient richness to print, for example, photo album pages
|
|
from a digital still camera or print-targeted television content.</p>
|
|
<p>Conformance to this profile means that a user agent
|
|
supports, at a minimum, the features defined in this specification.
|
|
This subject is addressed in <a href="#section-conformance">Section 2,
|
|
Conformance</a> below.</p>
|
|
|
|
<!-- ******************** -->
|
|
<!-- CONFORMANCE -->
|
|
<!-- ******************** -->
|
|
<h2 id="section-conformance">2. Conformance</h2>
|
|
|
|
<p>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
|
|
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY" and "OPTIONAL" in this
|
|
document are to be interpreted as described in RFC 2119 (see <a
|
|
class="noxref" href="#ref-RFC2119" rel="biblioentry"><span
|
|
class="normref">[RFC2119]</span></a>). However, for readability, these
|
|
words do not appear in all uppercase letters in this
|
|
specification.</p>
|
|
|
|
<p>The primary role of a profile is to define a subset of features that provides
|
|
a minimal guarantee of interoperability. In the case of the CSS Print Profile,
|
|
this guarantee is that a conforming user agent will support the features defined
|
|
in this specification following the CSS 2.1 conformance clause ([<a
|
|
href="#ref-css21">CSS21</a>] Section 3.2), recast
|
|
and summarized below:</p>
|
|
<ol>
|
|
<li>A CSS Print Profile conforming user agent (PP-UA or more simply "printer") <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> support the
|
|
<em>all</em> and <em>print</em> CSS 2.1 media types. A printer <em title="MAY in the RFC 2119 context" class="RFC2119">MAY</em> support other
|
|
CSS 2.1 media types, as well. </li>
|
|
<li>For each source document, a printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> attempt to retrieve all associated
|
|
style sheets that are appropriate for the supported media types.
|
|
A failure to retrieve a style sheet due to problems such as
|
|
a loss of network connection <em title="SHOULD NOT in the RFC 2119 context" class="RFC2119">SHOULD NOT</em> stop the printer from processing the document.
|
|
</li>
|
|
<li>A printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> parse the style sheets according to this specification. In
|
|
particular,
|
|
the printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> recognize all CSS Print Profile at-rules, blocks,
|
|
declarations, and selectors. If a printer encounters a property that applies for
|
|
a supported media type, the printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> parse the value according to the
|
|
property definition. This means that the printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> accept all valid values
|
|
and <em title="MAY in the RFC 2119 context" class="RFC2119">MAY</em> ignore declarations with invalid values. A printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> ignore rules that
|
|
apply to unsupported media types. </li>
|
|
<li>For each element in a document tree, the printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> assign a value for
|
|
every applicable property according to the property's definition and the rules
|
|
of cascading and inheritance. </li>
|
|
<li>If the source document comes with alternate style sheets (such as with the
|
|
"alternate" keyword in HTML 4.01 [<a href="#ref-html4">HTML4</a>]), the printer <em title="MAY in the RFC 2119 context" class="RFC2119">MAY</em>
|
|
ignore the style sheet or treat it in some implementation dependent manner. </li></ol>
|
|
<p>As with CSS 2.1, there are qualifications to this conformance clause:</p>
|
|
<ol>
|
|
<li>Values <em title="MAY in the RFC 2119 context" class="RFC2119">MAY</em> be approximated when <em title="REQUIRED in the RFC 2119 context" class="RFC2119">REQUIRED</em> by the printer.</li>
|
|
<li>The inability of a printer to implement part of this specification due to
|
|
the limitations of a particular device (e.g., a printer cannot render colors on
|
|
a monochrome page) <em title="SHALL NOT in the RFC 2119 context" class="RFC2119">SHALL NOT</em> imply non-conformance. </li>
|
|
</ol>
|
|
<p>It is <em title="RECOMMENDED in the RFC 2119 context" class="RFC2119">RECOMMENDED</em>
|
|
that authors use this conformance profile to take advantage
|
|
of forward compatibility. Authors <em title="MAY in the RFC 2119 context" class="RFC2119">MAY</em> use style properties with
|
|
an understanding that the cascading rules are processed correctly and that
|
|
unknown properties and values are ignored. For example:</p>
|
|
|
|
<div class="code-example"><pre> body {
|
|
background-position: center center;
|
|
background-position: 45% 55%;
|
|
}
|
|
</pre></div>
|
|
<p>A printer that can accept percentage values for the
|
|
background-position property will process the first background-position
|
|
declaration and then replace that value with the second
|
|
background-position declaration. A printer that cannot accept percentage values will process the first
|
|
background-position declaration and ignore the second background-position
|
|
declaration.</p>
|
|
|
|
<h3 id="s2.1">2.1. Enhanced Layout Extension Conformance</h3>
|
|
<p>Some print applications require a
|
|
more exacting page layout than is available from a
|
|
minimally conforming printer (<i>e.g.,</i> photo album pages or pages from
|
|
a digital TV).
|
|
The Enhanced Layout Extension increases the number
|
|
of properties that a conforming printer <em title="MUST in the RFC 2119 context" class="RFC2119">MUST</em> support and thereby the
|
|
requirements of its memory and performance capabilities. These
|
|
added CSS constructs
|
|
are indicated with a "<em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em>" or
|
|
an increased range of values, in the CSS
|
|
Print-Enhanced columns below.</p>
|
|
|
|
<p> Printers supporting the Enhanced Layout
|
|
Extension <em
|
|
title="MAY in the RFC 2119 context" class="RFC2119">MAY</em> also
|
|
support an <em title="OPTIONAL in the RFC 2119 context"
|
|
class="RFC2119">OPTIONAL</em>, discoverable (via some means outside the scope of
|
|
this document) Enhanced Layout Extension indicator.</p>
|
|
|
|
<!-- ******************* -->
|
|
<!-- SELECTORS -->
|
|
<!-- ******************* -->
|
|
<h2 id="section-selectors">3. Selectors</h2>
|
|
<p>In CSS 2.1, pattern matching rules determine which style rules apply to elements
|
|
in the document tree [<a
|
|
href="#ref-css21">CSS21</a>].</p>
|
|
|
|
<p>
|
|
Consideration is given to low-cost printers that might not be able
|
|
to store all the attributes of each element, but only keep the few that are necessary.
|
|
Therefore, only Enhanced Layout Extension conforming
|
|
printers <em title="MUST in the RFC 2119 context" class="RFC2119">MUST</em> support attribute selectors.
|
|
</p>
|
|
<p>
|
|
The following table summarizes CSS Print Profile selector syntax. In
|
|
addition to the selectors marked "<em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em>"
|
|
in the CSS Print or CSS Print-Enhanced columns, the CSS Print
|
|
Profile includes the CSS 2.1 grouping mechanism (See [<a href="#ref-css21">CSS21</a>] Section 5.2.1).
|
|
</p>
|
|
<table border="1" width="80%"
|
|
summary="List of all selectors indicating which ones are supported">
|
|
<tbody>
|
|
<tr>
|
|
<th>Pattern</th>
|
|
<th>Meaning</th>
|
|
<th>Selector type</th>
|
|
<th>CSS Print</th>
|
|
<th>CSS Print-Enhanced</th>
|
|
</tr>
|
|
<tr class="yes">
|
|
<td>*</td>
|
|
<td>Matches any element</td>
|
|
<td>Universal selector</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
</tr>
|
|
<tr class="yes">
|
|
<td>E</td>
|
|
<td>Matches any E element (i.e., any element of type E)</td>
|
|
<td>Type selectors</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
</tr>
|
|
<tr class="yes">
|
|
<td>E F</td>
|
|
<td>Matches any F element that is a descendant of an E element</td>
|
|
<td>Descendant selectors</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
</tr>
|
|
<tr class="yes">
|
|
<td>E > F</td>
|
|
<td>Matches any F element that is a child of an element E</td>
|
|
<td>Child selectors</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
</tr>
|
|
<tr class="enh">
|
|
<td>E[foo]</td>
|
|
<td>Matches any E element with the "foo" attribute set (whatever the
|
|
value).</td>
|
|
<td>Attribute selectors</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
</tr>
|
|
<tr class="enh">
|
|
<td>E[foo="warning"]</td>
|
|
<td>Matches any E element whose "foo" attribute value is exactly equal to
|
|
"warning".</td>
|
|
<td>Attribute selectors</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
</tr>
|
|
<tr class="enh">
|
|
<td>E[foo~="warning"]</td>
|
|
<td>Matches any E element whose "foo" attribute value is a list of
|
|
space-separated values, one of which is exactly equal to "warning".</td>
|
|
<td>Attribute selectors</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
</tr>
|
|
<tr class="yes">
|
|
<td>E.classid</td>
|
|
<td>The same as E[class~=classid]</td>
|
|
<td>Class selectors</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
</tr>
|
|
<tr class="yes">
|
|
<td>E#myid</td>
|
|
<td>Matches any E element id equal to "myid".</td>
|
|
<td>ID selectors</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
</tr>
|
|
<tr class="yes">
|
|
<td>@page :first</td>
|
|
<td>Specifies style for the first page of a document</td>
|
|
<td>Page pseudo-classes</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h3 id="at-rules">3.1 At-rules</h3>
|
|
<p>The following table summarizes CSS Print Profile at-rule syntax.</p>
|
|
<table border="1" width="80%">
|
|
<tbody>
|
|
<tr>
|
|
<th>at-rule</th>
|
|
<th>Function</th>
|
|
<th>CSS Print</th>
|
|
<th>CSS Print-Enhanced</th></tr>
|
|
<tr class="enh">
|
|
<td>@import</td>
|
|
<td>Imports an external style sheet.</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td></tr>
|
|
<tr class="yes">
|
|
<td>@charset</td>
|
|
<td>Defines character set for the style sheet.</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td></tr>
|
|
<tr class="yes">
|
|
<td>@media</td>
|
|
<td>Groups a set of style rules to apply only to one or more particular
|
|
media.</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td></tr>
|
|
<tr class="yes">
|
|
<td>@page</td>
|
|
<td>Defines a (optionally named) page formatting context.</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td></tr>
|
|
<tr class="yes">
|
|
<td>@bottom-left-corner, @bottom-left, <br />@bottom-center, @bottom-right, @bottom-right-corner</td>
|
|
<td>Defines areas on the page within the running footer in the page's bottom margin [<a
|
|
href="#ref-pgmedia">PAGEMEDIA</a>]</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
</tr>
|
|
<tr class="yes">
|
|
<td>@top-left-corner, @top-left, <br />@top-center, <br /> @top-right, <br />@top-right-corner</td>
|
|
<td>Defines areas on the page within the running header in the page's top margin [<a
|
|
href="#ref-pgmedia">PAGEMEDIA</a>]</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<!-- ******************************* -->
|
|
<!-- PROPERTIES AND VALUES -->
|
|
<!-- ******************************* -->
|
|
<h2 id="section-properties">4. Properties</h2>
|
|
|
|
<p> As with selectors, the properties a printer <em title="MUST in the RFC 2119 context" class="RFC2119">MUST</em>
|
|
support are similar to those that a mobile device <em title="MUST in the RFC 2119 context" class="RFC2119">MUST</em> support ([<a
|
|
href="#ref-cssmobile">CSSMOBILE</a>], <a
|
|
href="http://www.w3.org/TR/css-mobile#section-properties">
|
|
Properties</a>) with the exception of those that don't apply to the
|
|
page or are specifically targeted at media other than the page. </p>
|
|
|
|
<p>
|
|
In some cases the allowable values for a printer are a subset of the full range of
|
|
values to match the reduced memory and performance capabilities of a low-cost printer.
|
|
</p>
|
|
|
|
<p>The following table summarizes CSS Print Profile properties and property
|
|
values. Refer to <cite>CSS3 Module: Paged Media</cite> [<a
|
|
href="#ref-pgmedia">PAGEMEDIA</a>] for the definition of the
|
|
image-orientation, fit, fit-position, and size properties and CSS 2.1 [<a href="#ref-css21">CSS21</a>]
|
|
for the definition of all other properties and values.</p>
|
|
<table border="1" width="80%">
|
|
<thead>
|
|
<tr align="center">
|
|
<th>Name</th>
|
|
<th>CSS Print</th>
|
|
<th>CSS Print-Enhanced</th>
|
|
<th>CSS Values</th>
|
|
<th>Initial value</th></tr></thead>
|
|
<tbody>
|
|
<tr class="yes">
|
|
<td>'background'</td>
|
|
<td>background-color | inherit</td>
|
|
<td>
|
|
['background-color' || 'background-image' || 'background-repeat' || 'background-position']
|
|
| inherit</td>
|
|
<td>['background-color' || 'background-image' || 'background-repeat' || 'background-attachment' || 'background-position'] | inherit</td>
|
|
<td>see individual properties</td></tr>
|
|
<tr class="yes">
|
|
<td>'background-color'</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><color> | transparent | inherit</td>
|
|
<td>transparent</td></tr>
|
|
<tr class="enh">
|
|
<td>'background-image'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><uri> | none | inherit</td>
|
|
<td>none</td></tr>
|
|
<tr class="enh">
|
|
<td>'background-position'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>[ [ <percentage> | <length> ]{1,2} | [ [top | center |
|
|
bottom] || [left | center | right] ] ] | inherit</td>
|
|
<td>0% 0%</td></tr>
|
|
<tr class="enh">
|
|
<td>'background-repeat'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>repeat | repeat-x | repeat-y | no-repeat | inherit</td>
|
|
<td>repeat</td></tr>
|
|
<tr class="enh">
|
|
<td>'border'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>[ <border-width> || <border-style> || [<color> |
|
|
transparent] ] | inherit</td>
|
|
<td>see individual properties</td></tr>
|
|
<tr class="enh">
|
|
<td>'border-collapse'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>collapse | separate | inherit</td>
|
|
<td>collapse</td></tr>
|
|
<tr class="enh">
|
|
<td>'border-color'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>[<color> | transparent]{1,4} | inherit</td>
|
|
<td>see individual properties</td></tr>
|
|
<tr class="enh">
|
|
<td>'border-spacing'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><length> <length>? | inherit</td>
|
|
<td>0</td></tr>
|
|
<tr class="enh">
|
|
<td>'border-style'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td> none, solid </td>
|
|
<td><border-style>{1,4} | inherit</td>
|
|
<td>see individual properties</td></tr>
|
|
<tr class="enh">
|
|
<td>'border-top' 'border-right' 'border-bottom' 'border-left'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>[ <border-width> || <border-style> || [<color> |
|
|
transparent] ] | inherit</td>
|
|
<td>see individual properties</td></tr>
|
|
<tr class="enh">
|
|
<td>'border-top-color' 'border-right-color' 'border-bottom-color'
|
|
'border-left-color'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><border-color> | transparent | inherit</td>
|
|
<td>the value of the 'color' property</td></tr>
|
|
<tr class="enh">
|
|
<td>'border-top-style' 'border-right-style' 'border-bottom-style'
|
|
'border-left-style'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td>none, solid</td>
|
|
<td><border-style> | inherit</td>
|
|
<td>none</td></tr>
|
|
<tr class="enh">
|
|
<td>'border-top-width' 'border-right-width' 'border-bottom-width'
|
|
'border-left-width'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><border-width> | inherit</td>
|
|
<td>medium</td></tr>
|
|
<tr class="enh">
|
|
<td>'border-width'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><border-width>{1,4} | inherit</td>
|
|
<td>see individual properties</td></tr>
|
|
<tr class="enh">
|
|
<td>'bottom'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><length> | <percentage> | auto | inherit</td>
|
|
<td>auto</td></tr>
|
|
<tr class="enh">
|
|
<td>'caption-side'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>top | bottom | left | right | inherit</td>
|
|
<td>top</td></tr>
|
|
<tr class="enh">
|
|
<td>'clear'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>none | left | right | both | inherit</td>
|
|
<td>none</td></tr>
|
|
<tr class="enh">
|
|
<td>'clip'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><shape> | auto | inherit</td>
|
|
<td>auto</td></tr>
|
|
<tr class="yes">
|
|
<td>'color'</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><color> | inherit</td>
|
|
<td>depends on user agent</td></tr>
|
|
<tr class="yes">
|
|
<td>'content'</td>
|
|
<td>inherit | [<string> | counter(pages<a href="#table_note_0">†</a>)]+</td>
|
|
<td>inherit | [<string> | counter(pages<a href="#table_note_0">†</a>)]+</td>
|
|
<td>[ <string> | <uri> | <counter> | attr(X) |
|
|
open-quote | close-quote | no-open-quote | no-close-quote ]+ | inherit</td>
|
|
<td>empty string</td></tr>
|
|
<tr class="yes">
|
|
<td>'counter-increment'</td>
|
|
<td>"pages"<a href="#table_note_0">†</a></td>
|
|
<td>"pages"<a href="#table_note_0">†</a></td>
|
|
<td>[ <identifier> <integer> ]+ | none |
|
|
inherit</td>
|
|
<td>none</td></tr>
|
|
<tr class="yes">
|
|
<td>'counter-reset'</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>[ <identifier> <integer>? ]+ | none | inherit</td>
|
|
<td>none</td></tr>
|
|
<tr class="enh">
|
|
<td>'display'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td>inline | block | list-item | none |inherit</td>
|
|
<td>inline | block | list-item | run-in | compact | marker | table |
|
|
inline-table | table-row-group | table-header-group | table-footer-group |
|
|
table-row | table-column-group | table-column | table-cell | table-caption
|
|
| none | inherit</td>
|
|
<td>inline</td></tr>
|
|
<tr class="enh"><td>'fit'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em> </td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>fill | hidden | meet | slice</td>
|
|
<td>fill</td>
|
|
</tr>
|
|
<tr class="enh"><td>'fit-position'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em> </td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>[ [<percentage> | <length> ]{1,2} | [ [top | center |
|
|
bottom] || [left | center | right] ] ] | auto</td>
|
|
<td>0% 0%</td>
|
|
</tr>
|
|
<tr class="enh">
|
|
<td>'float'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em> </td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>left | right | none | inherit</td>
|
|
<td>none</td></tr>
|
|
<tr class="yes">
|
|
<td>'font'</td>
|
|
<td> [ [ 'font-style' || 'font-weight' ]? 'font-size' [ / 'line-height' ]? 'font-family' ] | inherit</td>
|
|
<td> [ [ 'font-style' || 'font-variant' || 'font-weight' ]? 'font-size' [ / 'line-height' ]? 'font-family' ] | inherit</td>
|
|
<td> [ [ 'font-style' || 'font-variant' || 'font-weight' ]? 'font-size' [ / 'line-height' ]? 'font-family' ] | caption | icon | menu | message-box |
|
|
small-caption | status-bar | inherit</td>
|
|
<td>see individual properties</td></tr>
|
|
<tr class="yes">
|
|
<td>'font-family'</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em><a href="#table_note_1">*</a></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em><a href="#table_note_1">*</a></td>
|
|
<td>[[ <family-name> | <generic-family> ],]* [
|
|
<family-name> | <generic-family> ] | inherit</td>
|
|
<td>depends on user agent</td></tr>
|
|
<tr class="yes">
|
|
<td>'font-size'</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em> <a
|
|
href="#table_note_2">**</a></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em> <a
|
|
href="#table_note_2">**</a></td>
|
|
<td><absolute-size> | <relative-size> | <length> |
|
|
<percentage> | inherit</td>
|
|
<td>medium</td></tr>
|
|
<tr class="yes">
|
|
<td>'font-style'</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em><a
|
|
href="#table_note_2">**</a></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em> <a
|
|
href="#table_note_2">**</a></td>
|
|
<td>normal | italic | oblique | inherit</td>
|
|
<td>normal</td></tr>
|
|
<tr class="enh">
|
|
<td>'font-variant'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>normal | small-caps | inherit</td>
|
|
<td>normal</td></tr>
|
|
<tr class="yes">
|
|
<td>'font-weight'</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em> <a
|
|
href="#table_note_2">**</a></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em> <a
|
|
href="#table_note_2">**</a></td>
|
|
<td>normal | bold | bolder | lighter | 100 | 200 | 300 | 400 | 500 | 600 |
|
|
700 | 800 | 900 | inherit</td>
|
|
<td>normal</td></tr>
|
|
<tr class="yes">
|
|
<td>'height'</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em> </td>
|
|
<td><length> | <percentage> | auto | inherit</td>
|
|
<td>auto</td></tr>
|
|
<tr class="enh">
|
|
<td>'image-orientation'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><angle> | auto</td>
|
|
<td>auto</td></tr>
|
|
<tr class="enh">
|
|
<td>'left'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em> </td>
|
|
<td><length> | <percentage> | auto | inherit</td>
|
|
<td>auto</td></tr>
|
|
<tr class="enh">
|
|
<td>'letter-spacing'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>normal | <length> | inherit</td>
|
|
<td>normal</td></tr>
|
|
<tr class="yes">
|
|
<td>'line-height'</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>normal | <number> | <length> | <percentage> |
|
|
inherit</td>
|
|
<td>normal</td></tr>
|
|
<tr class="enh">
|
|
<td>'list-style'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>[ 'list-style-type' || 'list-style-position' || 'list-style-image' ] |
|
|
inherit</td>
|
|
<td>see individual properties</td></tr>
|
|
<tr class="enh">
|
|
<td>'list-style-image'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><uri> | none | inherit</td>
|
|
<td>none</td></tr>
|
|
<tr class="yes">
|
|
<td>'list-style-position'</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em> </td>
|
|
<td>inside | outside | inherit</td>
|
|
<td>outside</td></tr>
|
|
<tr class="yes">
|
|
<td>'list-style-type'</td>
|
|
<td>disc, decimal, lower-alpha, upper-alpha, none and inherit</td>
|
|
<td>disc, decimal, lower-alpha,
|
|
upper-alpha, none and inherit</td>
|
|
<td>disc | circle | square | decimal | decimal-leading-zero | lower-roman
|
|
| upper-roman | lower-greek | lower-alpha | lower-latin | upper-alpha |
|
|
upper-latin | hebrew | armenian | georgian | cjk-ideographic | hiragana |
|
|
katakana | hiragana-iroha | katakana-iroha | none | inherit</td>
|
|
<td>disc</td></tr>
|
|
<tr class="yes">
|
|
<td>'margin'</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><margin-width>{1,4} | inherit</td>
|
|
<td>see individual properties</td></tr>
|
|
<tr class="yes">
|
|
<td>'margin-top' 'margin-right' 'margin-bottom' 'margin-left'</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><margin-width> | inherit</td>
|
|
<td>0</td></tr>
|
|
<tr class="enh">
|
|
<td>'orphans'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><integer> | inherit</td>
|
|
<td>2</td></tr>
|
|
<tr class="enh">
|
|
<td>'overflow'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em> </td>
|
|
<td>visible | hidden | scroll | auto | inherit</td>
|
|
<td>visible</td></tr>
|
|
<tr class="enh">
|
|
<td>'padding'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><padding-width>{1,4} | inherit</td>
|
|
<td>see individual properties</td></tr>
|
|
<tr class="enh">
|
|
<td>'padding-top' 'padding-right' 'padding-bottom' 'padding-left'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><padding-width> | inherit</td>
|
|
<td>0</td></tr>
|
|
<tr class="yes">
|
|
<td>'page'</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><identifier> | auto</td>
|
|
<td>auto</td></tr>
|
|
<tr class="yes">
|
|
<td>'page-break-after'</td>
|
|
<td> auto | always | inherit </td>
|
|
<td>auto | always | inherit </td>
|
|
<td>auto | always | avoid | left | right | inherit</td>
|
|
<td>auto</td></tr>
|
|
<tr class="yes">
|
|
<td>'page-break-before'</td>
|
|
<td> auto | always | inherit </td>
|
|
<td>auto | always | inherit </td>
|
|
<td>auto | always | avoid | left | right | inherit</td>
|
|
<td>auto</td></tr>
|
|
<tr class="yes">
|
|
<td>'page-break-inside'</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>avoid | auto | inherit</td>
|
|
<td>auto</td></tr>
|
|
<tr class="enh">
|
|
<td>'position'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em> <a href="#table_note_pos">‡</a> </td>
|
|
<td>static | relative | absolute | fixed | inherit</td>
|
|
<td>static</td></tr>
|
|
<tr class="enh">
|
|
<td>'right'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><length> | <percentage> | auto | inherit</td>
|
|
<td>auto</td></tr>
|
|
<tr class="yes">
|
|
<td>'size'</td>
|
|
<td>[<length>{1,2}| letter | legal | ledger | A4 | A5 | A3 | B4 | B5 ] | auto | portrait | inherit</td>
|
|
<td>[<length>{1,2} | letter | legal
|
|
| ledger | A4 | A5 | A3 | B4 | B5 ] | auto | portrait | landscape | inherit
|
|
</td>
|
|
<td>[<length>{1,2} | letter | legal | ledger | A4 | A5 |
|
|
A3 | B4 | B5 ] | auto | portrait | landscape | inherit</td>
|
|
<td>auto</td></tr>
|
|
<tr class="enh">
|
|
<td>'table-layout'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>auto | fixed | inherit</td>
|
|
<td>auto</td></tr>
|
|
<tr class="yes">
|
|
<td>'text-align'</td>
|
|
<td>left | center | inherit</td>
|
|
<td>left | right | center | inherit</td>
|
|
<td>left | right | center | justify | <string> | inherit</td>
|
|
<td>depends on user agent and writing direction</td></tr>
|
|
<tr class="yes">
|
|
<td>'text-decoration'</td>
|
|
<td>none, underline, and inherit</td>
|
|
<td>none, underline, and inherit</td>
|
|
<td>none | [ underline || overline || line-through || blink ] | inherit</td>
|
|
<td>none</td></tr>
|
|
<tr class="yes">
|
|
<td>'text-indent'</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><length> | <percentage> | inherit</td>
|
|
<td>0</td></tr>
|
|
<tr class="enh">
|
|
<td>'text-transform'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>capitalize | uppercase | lowercase | none | inherit</td>
|
|
<td>none</td></tr>
|
|
<tr class="enh">
|
|
<td>'top'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><length> | <percentage> | auto | inherit</td>
|
|
<td>auto</td></tr>
|
|
<tr class="enh">
|
|
<td>'vertical-align'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em><sup><a href="#table_note_vert_align">1</a></sup></td>
|
|
<td>baseline | sub | super | top | text-top | middle | bottom |
|
|
text-bottom | <percentage> | <length> | inherit</td>
|
|
<td>baseline</td></tr>
|
|
<tr class="enh">
|
|
<td>'visibility'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td>visible | hidden | collapse | inherit</td>
|
|
<td>inherit</td></tr>
|
|
<tr class="yes">
|
|
<td>'white-space'</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em> </td>
|
|
<td>normal | pre | nowrap | inherit</td>
|
|
<td>normal</td></tr>
|
|
<tr class="enh">
|
|
<td>'widows'</td>
|
|
<td><em title="MAY In The RFC 2119 Context" class="RFC2119">MAY</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em> </td>
|
|
<td><integer> | inherit</td>
|
|
<td>2</td></tr>
|
|
<tr class="yes">
|
|
<td>'width'</td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><em title="MUST In The RFC 2119 Context" class="RFC2119">MUST</em></td>
|
|
<td><length> | <percentage> | auto | inherit</td>
|
|
<td>auto</td></tr>
|
|
</tbody></table>
|
|
|
|
<p class="tableNotes"> Table Note:</p>
|
|
|
|
<p class="aTableNote" id="table_note_0">† Only the single
|
|
identifier "pages" that represents the current page number is <em title="REQUIRED in the RFC 2119 context" class="RFC2119">REQUIRED</em>.</p>
|
|
|
|
<p class="aTableNote" id="table_note_1">* It is <em title="RECOMMENDED in the RFC 2119 context" class="RFC2119">RECOMMENDED</em> that a printer minimally support
|
|
"serif," "sans-serif," and "monospace" font families. </p>
|
|
|
|
<p class="aTableNote" id="table_note_2"> ** The supported values <em title="SHOULD in the RFC 2119 context" class="RFC2119">SHOULD</em> be appropriate to
|
|
the fonts available to the printer.</p>
|
|
|
|
<p class="aTableNote" id="table_note_pos"> ‡
|
|
The printer <em title="MAY in the RFC 2119 context" class="RFC2119">MAY</em> ignore positioned elements that are placed on the page before the position of the current element in the normal flow.
|
|
</p>
|
|
|
|
<p class="aTableNote" id="table_note_vert_align"> <sup>1</sup>
|
|
Vertical alignment is undefined across page boundaries.
|
|
</p>
|
|
|
|
<!-- **************** -->
|
|
<!-- SYNTAX -->
|
|
<!-- **************** -->
|
|
<h2 id="section-syntax">5. CSS Syntax</h2>
|
|
<p>The CSS Print Profile uses the same syntax as specified in <cite>Cascading Style Sheets, Level 2, revision 1</cite> (CSS 2.1) [<a
|
|
href="#ref-css21">CSS21</a>]. The CSS Print
|
|
Profile uses a subset of the values used in CSS 2.1. Specifically:</p>
|
|
<ol>
|
|
<li>The printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> support integer and real numbers
|
|
([<a href="#ref-css21">CSS21</a>], <a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/syndata.html#q15">Section 4.3.1</a>). </li>
|
|
<li>The printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> support the following lengths
|
|
([<a href="#ref-css21">CSS21</a>], <a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/syndata.html#length-units">Section 4.3.2</a>):
|
|
<ul>
|
|
<li>px</li>
|
|
<li>em</li>
|
|
<li>ex</li>
|
|
<li>in</li>
|
|
<li>cm</li>
|
|
<li>mm</li>
|
|
<li>pt</li>
|
|
<li>pc</li>
|
|
</ul>
|
|
The printer <em title="MAY in the RFC 2119 context" class="RFC2119">MAY</em> support other lengths. </li>
|
|
<li>The printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> support percentage values
|
|
([<a href="#ref-css21">CSS21</a>], <a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/syndata.html#percentage-units">Section 4.3.3</a>). </li>
|
|
<li>The printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> support URI values
|
|
([<a href="#ref-css21">CSS21</a>], <a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/syndata.html#uri">Section 4.3.4</a>). </li>
|
|
<li>The printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> support
|
|
a "pages" counter value that tracks page numbers
|
|
([<a href="#ref-css21">CSS21</a>], <a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/syndata.html#counter">Section 4.3.5</a>). </li>
|
|
<li>The printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em>
|
|
support the following color values:
|
|
<ul>
|
|
<li>The 16 colors defined in HTML 4.01 [<a href="#ref-html4">HTML4</a>] </li>
|
|
<li>A numerical RGB specification
|
|
([<a href="#ref-css21">CSS21</a>], <a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/syndata.html#color-units">Section 4.3.6</a>) </li>
|
|
</ul>
|
|
The printer <em title="MAY in the RFC 2119 context" class="RFC2119">MAY</em> support other color values. The printer
|
|
<em title="MAY in the RFC 2119 context" class="RFC2119">MAY</em> support user preferences for colors
|
|
([<a href="#ref-css21">CSS 2.1</a>], <a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/ui.html#system-colors">Section 18.2</a>).</li>
|
|
<li>The printer <em title="MAY in the RFC 2119 context" class="RFC2119">MAY</em> support user preferences for fonts
|
|
([<a href="#ref-css21">CSS 2.1</a>], <a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/ui.html#system-fonts">Section 18.3</a>).</li>
|
|
</ol>
|
|
<p>Similarly, the CSS Print Profile requires that conforming user agents
|
|
support the character encoding mechanisms specified in CSS 2.1 [<a
|
|
href="#ref-css21">CSS21</a>]. Specifically:</p>
|
|
<ol>
|
|
<li>The printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> support priorities specified in
|
|
CSS 2.1 [<a
|
|
href="#ref-css21">CSS21</a>] to determine a
|
|
document's character encoding. </li>
|
|
<li>The printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> support the
|
|
CSS 2.1 @charset rules.
|
|
However, if the character set specified by the @charset
|
|
rule of a external style sheet is not supported by the printer, the style sheet
|
|
will be ignored.
|
|
</li>
|
|
</ol>
|
|
|
|
<!-- *************************************************************** -->
|
|
<!-- ASSIGNING PROPERTY VALUES, CASCADING, and INHERITANCE -->
|
|
<!-- *************************************************************** -->
|
|
<h2 id="section-assigning">6. Assigning Property Values, Cascading, and
|
|
Inheritance</h2>
|
|
<p>In general, the CSS Print Profile uses the same cascading rules as in CSS 2.1.
|
|
Specifically:</p>
|
|
<ol>
|
|
<li>The printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> assign values as described in
|
|
CSS 2.1 ([<a
|
|
href="#ref-css21">CSS21</a>], <a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/cascade.html#q1">Section 6.1</a>). </li>
|
|
<li>The printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> support inheritance as described in
|
|
CSS 2.1 ([<a
|
|
href="#ref-css21">CSS21</a>], <a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/cascade.html#inheritance">Section 6.2</a>). </li>
|
|
<li>A
|
|
printer supporting Enhanced Layout Extension conformance
|
|
<em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> support the
|
|
CSS 2.1 @import rules as specified in CSS 2.1 ([<a
|
|
href="#ref-css21">CSS21</a>], <a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/cascade.html#at-import">Section 6.3</a>). </li>
|
|
<li>The printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> support author style sheets. The printer <em title="MAY in the RFC 2119 context" class="RFC2119">MAY</em>
|
|
support user or user-agent style sheets
|
|
([<a href="#ref-css21">CSS21</a>], <a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/cascade.html#cascade">Section 6.4</a>). </li>
|
|
<li>The printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> support all
|
|
CSS 2.1 cascading mechanisms
|
|
([<a href="#ref-css21">CSS21</a>] Sections
|
|
<a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/cascade.html#cascading-order">6.4.1</a>-<a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/cascade.html#q13">6.4.4</a>). </li>
|
|
</ol>
|
|
|
|
<!-- ******************** -->
|
|
<!-- MEDIA TYPES -->
|
|
<!-- ******************** -->
|
|
<h2 id="section-mediatypes">7. Media Types</h2>
|
|
<p>A CSS Print Profile conforming user agent <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> be able to process
|
|
media-dependent style sheets as specified in CSS 2.1 ([<a
|
|
href="#ref-css21">CSS21</a>], <a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/media.html">Section 7</a>).
|
|
Specifically:</p>
|
|
<ol>
|
|
<li>The printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> support the
|
|
CSS 2.1 @media rules as specified in CSS 2.1 ([<a
|
|
href="#ref-css21">CSS21</a>], <a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/media.html">Section 7</a>). </li>
|
|
<li>The printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> accept and process style sheets that target the
|
|
<code>print</code> media type. </li>
|
|
<li>The printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> accept and process style sheets that target the
|
|
<code>all</code> media type. </li>
|
|
<li>The printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> accept style sheets that contain other (non-print)
|
|
media-dependent style sheets. </li>
|
|
<li>The printer <em title="MAY in the RFC 2119 context" class="RFC2119">MAY</em> process other media types (such as
|
|
<code>projection</code> or
|
|
<code>handheld</code>). </li>
|
|
</ol>
|
|
<h2 id="section-interactions">8. CSS Print Profile Properties and User Agent interactions</h2>
|
|
<p>The following sections relax or otherwise modify the conformance requirements.</p>
|
|
|
|
<h3 id="s.8.1">8.1 Nested Floats, Divs, and Absolutely Positioned Boxes</h3>
|
|
|
|
<p>
|
|
Authors are cautioned that the nesting of floats, divs, and absolutely positioned boxes within
|
|
themselves, each other, and table cells should be used carefully, since the
|
|
nesting depth of these constructs is printer and implementation dependent.</p>
|
|
|
|
|
|
<h3 id="s.8.2">8.2 Page Breaks</h3>
|
|
<p>If <code>page-break-inside: avoid</code> is specified for a long element and
|
|
the printer is unable to buffer the entire element before committing it to
|
|
paper, it <em title="SHOULD in the RFC 2119 context" class="RFC2119">SHOULD</em> force a page break to occur before the long element and begin
|
|
the element starting at the top of the next page. If the long element starts at
|
|
the top of a page and exceeds the page length, the printer <em title="SHALL in the RFC 2119 context" class="RFC2119">SHALL</em> print as much
|
|
as possible on the first page and then resume that element on the next and
|
|
subsequent pages as <em title="REQUIRED in the RFC 2119 context" class="RFC2119">REQUIRED</em>
|
|
to preserve the content. A printer
|
|
<em title="MAY in the RFC 2119 context" class="RFC2119">MAY</em> perform scaling
|
|
to fit the long element on a single page; but this is not recommended unless the
|
|
scaling required is minimal.</p>
|
|
<h3 id="s.8.3">8.3 Page Size</h3>
|
|
|
|
<p>Due to a printer's mechanical limitations, the actual printable area of the
|
|
page is often less than the page size.
|
|
However, a printer <em title="SHOULD in the RFC 2119 context" class="RFC2119">SHOULD</em> be guided by the page size value supplied by the CSS size property when
|
|
choosing the media to print on.</p>
|
|
<p>See
|
|
<a href="http://www.w3.org/TR/css3-page/#renderingpages">
|
|
http://www.w3.org/TR/css3-page/#renderingpages</a> in <cite>CSS3
|
|
Paged Media</cite> [<a
|
|
href="#ref-pgmedia">PAGEMEDIA</a>] for a discussion of fitting contents to media
|
|
sheets.</p>
|
|
<h3 id="s.8.4">8.4 Default Style Sheets </h3>
|
|
<p>This entire section is informative.</p>
|
|
<p><a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/sample.html">Appendix D</a> of <cite>Cascading Style Sheets, Level 2, revision 1</cite> ([<a href="#ref-css21">CSS21</a>], <a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/sample.html">Appendix D</a>)
|
|
provides a sample style sheet.
|
|
This sheet uses several properties that are not required of a conforming printer, even
|
|
ones supporting the <a href="#s2.1">enhanced layout extensions</a> (section 2.1).</p>
|
|
<h4 id="s.8.5.1">8.5.1 Default Style Sheet Guidelines for printers</h4>
|
|
<p>
|
|
Developers of printers that do not implement the enhanced layout facilities
|
|
are encouraged but not required to adhere to the following implementation guidelines
|
|
that address unsupported properties. These guidelines are presented to promote
|
|
consistency between printer implementations.
|
|
</p>
|
|
<!-- Editorial Annotation -->
|
|
<p class="editorial">The guidelines below are annotated to show derivation of the guideline from the
|
|
<cite>Cascading Style Sheets, Level 2, revision 1</cite>
|
|
[<a href="#ref-css21">CSS21</a>] style sheet.
|
|
</p>
|
|
|
|
<ol>
|
|
<li> The <code> address, blockquote, body, dd, div, dl, dt, h1, h2, h3, h4, h5, h6,
|
|
hr, object, ol, p, pre, </code> and <code> ul</code> elements
|
|
should be treated as if their display property were set to <code>block</code>.
|
|
</li>
|
|
<li>The <code>li</code> element should be treated as if its display property were set to <code>list-items</code>.
|
|
</li>
|
|
<li> The table elements, <code>table, tr, td, th,</code> and <code>caption</code>, should have their
|
|
standard meaning and display treatments: <code>table, table-row, table-cell,</code> and <code>table-caption</code>.
|
|
</li>
|
|
<li> The elements <code>base, br, html, head, link, meta, param, style </code> and <code> title</code> should be treated as if their display property were set to <code>none</code>.
|
|
</li>
|
|
<li>The remaining elements,<code>
|
|
a, abbr, acronym, b, big, cite, code, dfn, em, form, i, img,
|
|
input, kbd, option, samp, small, select, strong, sub, sup, textarea, tt,
|
|
</code> and <code> var</code>,
|
|
should be treated as if their display property were set to <code>inline</code>.
|
|
A display property of <code> inline </code> for the elements <code>img, input, select,</code> and <code> textarea </code>
|
|
allows document authors a flexibility not available if their display property were <code>block</code>.
|
|
|
|
<div class="editorial">
|
|
The above guidelines come from the following portion of the CSS 2.1 default style sheet:
|
|
<pre><code>
|
|
ADDRESS, BLOCKQUOTE, BODY, DD, DIV, DL, DT, FIELDSET, FORM,
|
|
FRAME, FRAMESET, H1, H2, H3, H4, H5, H6, IFRAME, NOFRAMES,
|
|
OBJECT, OL, P, UL, APPLET, CENTER, DIR, HR, MENU,
|
|
{ display: block }
|
|
LI { display: list-item }
|
|
HEAD { display: none }
|
|
TABLE { display: table }
|
|
TR { display: table-row }
|
|
THEAD { display: table-header-group }
|
|
TBODY { display: table-row-group }
|
|
TFOOT { display: table-footer-group }
|
|
COL { display: table-column }
|
|
COLGROUP { display: table-column-group }
|
|
TD, TH { display: table-cell }
|
|
CAPTION { display: table-caption }
|
|
</code></pre>
|
|
</div></li>
|
|
|
|
<li> The edges of the content of <code>body</code> element should have 0.1 inch wide inset from the
|
|
left, top, right, and bottom of the printable area of the page.
|
|
Margin calculations will start from these offsets.
|
|
|
|
<div class="editorial">
|
|
<!-- Editorial Annotation -->
|
|
The .1 inch figure comes from the calculation that 8 px divided by 75px/inch ( a normal display resolution) is about .1 inches.
|
|
<pre><code>
|
|
BODY { padding: 8px;
|
|
line-height: 1.33 }
|
|
</code></pre>
|
|
|
|
</div>
|
|
</li>
|
|
|
|
<li>The content of the <code>sub</code> element should be treated as if its vertical-align property
|
|
were set to <code>sub</code>. Similarly, the content of the <code>sup</code> element should be treated
|
|
as if its vertical-align property were set to <code>sup</code>.
|
|
|
|
|
|
<div class="editorial">
|
|
<!-- Editorial Annotation -->
|
|
<pre><code>
|
|
SUB { vertical-align: sub }
|
|
SUP { vertical-align: super }
|
|
</code></pre>
|
|
</div>
|
|
</li>
|
|
|
|
<li>The <code>hr</code> element should be treated as if its area, as defined by its height and width, were outlined
|
|
by a one pixel thick, solid line.
|
|
The default line should be one pixel
|
|
high and the width of the containing box.
|
|
|
|
<div class="editorial">
|
|
<!-- Editorial Annotation -->
|
|
<pre><code>
|
|
HR { border: 1px inset }
|
|
</code></pre>
|
|
</div>
|
|
</li>
|
|
|
|
<li>The lower case letters of the content of the <code>abbr</code> and <code>acronym</code> elements should be rendered as scaled capital
|
|
letters, at approximately 75% of their size at the current font size. Upper case letters will be unchanged. Printers may
|
|
also choose to simply render lower case letters as upper case letters without scaling.
|
|
|
|
<div class="editorial">
|
|
<!-- Editorial Annotation -->
|
|
The 75% figure above is only one way to approximate small-caps. The printer is free to use
|
|
its own rendering of small-caps.
|
|
<pre><code>
|
|
ABBR, ACRONYM { font-variant: small-caps;
|
|
letter-spacing: 0.1em }
|
|
</code></pre>
|
|
</div>
|
|
</li>
|
|
|
|
<li>Page break avoidance both inside and after is removed for the
|
|
elements <code> h1, h2, h3, h4, h5,</code> and
|
|
<code>h6</code>. Therefore, the printer is not
|
|
required to move the content of these elements from the bottom of
|
|
one page to the top of the next.
|
|
|
|
<div class="editorial">
|
|
<!-- Editorial Annotation -->
|
|
<pre><code>
|
|
H1, H2, H3,
|
|
H4, H5, H6 { page-break-after: avoid;
|
|
page-break-inside: avoid }
|
|
</code></pre>
|
|
</div>
|
|
</li>
|
|
|
|
<li>The printer
|
|
need not avoid page breaks before the <code> ul, ol,</code> and
|
|
<code>dl</code> elements.
|
|
|
|
<div class="editorial">
|
|
<!-- Editorial Annotation -->
|
|
<pre><code>
|
|
UL, OL, DL { page-break-before: avoid }
|
|
</code></pre>
|
|
</div>
|
|
</li>
|
|
|
|
<li>The printer
|
|
may choose its own, fixed value for the padding properties of
|
|
elements where the <cite>Cascading Style Sheets,
|
|
Level 2, revision 1</cite> <a
|
|
href="http://www.w3.org/TR/2004/CR-CSS21-20040225/box.html">box model</a> ([<a
|
|
href="#ref-css21">CSS21</a>], <a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/box.html">Section 8</a>) applies. </li>
|
|
|
|
<li>The content
|
|
of all elements, except <code>hr</code>, should be treated as if the
|
|
element's border-style property were set to <code>none</code>. </li>
|
|
|
|
|
|
<li> The content of all elements may be treated as if the element's
|
|
overflow property were set to <code>visible</code> and the clip
|
|
property set to <code>auto</code>.
|
|
|
|
<div class="editorial">
|
|
<!-- Editorial Annotation -->
|
|
This guideline suggests consistent behavior among implementations.
|
|
</div>
|
|
|
|
</li>
|
|
|
|
<li>The content of all elements
|
|
may be treated as if the element's positioning property were set to
|
|
<code>static</code>.
|
|
|
|
<div class="editorial">
|
|
<!-- Editorial Annotation -->
|
|
Elements should be treated as if they are in the
|
|
normal flow.
|
|
</div>
|
|
|
|
</li>
|
|
|
|
<li> Tables should be treated as if the
|
|
table-layout property were set to <code>fixed</code>.
|
|
<div
|
|
class="editorial">
|
|
<!-- Editorial Annotation -->
|
|
This guideline promotes consistency since
|
|
<ul>
|
|
<li> the table-layout property is not mandated</li>
|
|
<li> There isn't a CSS default style sheet rule for this property</li>
|
|
</ul>
|
|
</div>
|
|
</li>
|
|
</ol>
|
|
|
|
<p>The following style sheet is a modification of the sample sheet in
|
|
<a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/sample.html">Appendix D</a> of
|
|
<cite>Cascading Style Sheets, Level 2, revision 1</cite> ([<a
|
|
href="#ref-css21">CSS21</a>], <a
|
|
href="http://www.w3.org/TR/2004/CR-CSS21-20040225/sample.html">Appendix D</a>) and
|
|
depends on the above guidelines.
|
|
</p>
|
|
|
|
<pre style="margin-left: .25in;">th { font-weight: bolder; text-align: center }
|
|
caption { text-align: center }
|
|
body { line-height: 1.33 }
|
|
h1 { font-size: 2em; margin: .67em 0 }
|
|
h2 { font-size: 1.5em; margin: .83em 0 }
|
|
h3 { font-size: 1.17em; margin: 1em 0 }
|
|
h4, p,
|
|
blockquote, ul,
|
|
form,
|
|
ol, dl { margin: 1.33em 0 }
|
|
h5 { font-size: .83em; line-height: 1.17em; margin: 1.67em 0 }
|
|
h6 { font-size: .67em; margin: 2.33em 0 }
|
|
h1, h2, h3, h4,
|
|
h5, h6, b,
|
|
strong { font-weight: bolder }
|
|
blockquote { margin-left: 40px; margin-right: 40px }
|
|
i, cite, em,
|
|
var, address { font-style: italic }
|
|
pre, tt, code,
|
|
kbd, samp { font-family: monospace }
|
|
pre { white-space: pre }
|
|
big { font-size: 1.17em }
|
|
small, sub, sup { font-size: .83em }
|
|
ol, ul, dd { margin-left: 40px }
|
|
ol { list-style-type: decimal }
|
|
ol ul, ul ol,
|
|
ul ul, ol ol { margin-top: 0; margin-bottom: 0 }
|
|
br { content: "\A" }
|
|
|
|
@media print {
|
|
@page { margin: 10% }
|
|
blockquote,
|
|
pre { page-break-inside: avoid }
|
|
}
|
|
</pre>
|
|
|
|
|
|
<h4 id="s.8.5.2">8.5.2 Default Style Sheet Guidelines for Enhanced Layout printers</h4>
|
|
|
|
<p>Developers of printers
|
|
conforming to the <a href="#s2.1">enhanced
|
|
layout extensions</a> (section 2.1) <em title="MUST in the RFC 2119 context" class="RFC2119">MUST</em> implement more of
|
|
<cite>Cascading Style Sheets, Level 2, revision 1</cite> [<a
|
|
href="#ref-css21">CSS21</a>] than conforming
|
|
printers, although
|
|
the set of properties and their values is still less than
|
|
complete.
|
|
</p>
|
|
|
|
<p>
|
|
Developers of printers
|
|
are encouraged but not required to adhere to
|
|
the following implementation guidelines that address unsupported
|
|
properties.
|
|
</p>
|
|
|
|
<ol>
|
|
<li> The table elements, <code>table, tr, td, th,</code> and
|
|
<code>caption</code>, should have their standard meaning and display
|
|
treatments: <code>table, table-row, table-cell,</code> and
|
|
<code>table-caption</code>. </li>
|
|
|
|
<li>
|
|
The rendering of the hr element is implementation dependent since support of the <code>inset</code> value of the border-style property is not required.
|
|
</li>
|
|
|
|
|
|
<li>Page break avoidance both inside and after is removed for the
|
|
elements <code> h1, h2, h3, h4, h5,</code> and
|
|
<code>h6</code>. Therefore, the printer
|
|
need not be concerned with moving the content
|
|
of these elements from the bottom of one page to the top of the next.
|
|
</li>
|
|
|
|
<li>The printer
|
|
need not avoid page breaks before the <code> ul, ol,</code> and
|
|
<code>dl</code> elements. </li>
|
|
|
|
</ol>
|
|
|
|
<p>The following style sheet is a modification of the sample sheet in
|
|
<a href="http://www.w3.org/TR/2004/CR-CSS21-20040225/sample.html">Appendix D</a> of
|
|
[<a href="#ref-css21">CSS21</a>] and depends on the above guidelines.
|
|
</p>
|
|
|
|
<pre style="margin-left: .25in;">address,
|
|
blockquote,
|
|
body, dd, div,
|
|
dl, dt,
|
|
form,
|
|
h1, h2, h3, h4,
|
|
h5, h6,
|
|
object, ol, p,
|
|
ul,
|
|
hr, pr e { display: block }
|
|
li { display: list-item }
|
|
head { display: none }
|
|
th { font-weight: bolder; text-align: center }
|
|
caption { text-align: center }
|
|
body { padding: 8px; line-height: 1.33 }
|
|
h1 { font-size: 2em; margin: .67em 0 }
|
|
h2 { font-size: 1.5em; margin: .83em 0 }
|
|
h3 { font-size: 1.17em; margin: 1em 0 }
|
|
h4, p,
|
|
blockquote, ul,
|
|
form,
|
|
ol, dl, { margin: 1.33em 0 }
|
|
h5 { font-size: .83em; line-height: 1.17em; margin: 1.67em 0 }
|
|
h6 { font-size: .67em; margin: 2.33em 0 }
|
|
h1, h2, h3, h4,
|
|
h5, h6, b,
|
|
strong { font-weight: bolder }
|
|
blockquote { margin-left: 40px; margin-right: 40px }
|
|
i, cite, em,
|
|
var, address { font-style: italic }
|
|
pre, tt, code,
|
|
kbd, samp { font-family: monospace }
|
|
pre { white-space: pre }
|
|
big { font-size: 1.17em }
|
|
small, sub, sup { font-size: .83em }
|
|
hr { border: 1px }
|
|
ol, ul, dd { margin-left: 40px }
|
|
ol { list-style-type: decimal }
|
|
ol ul, ul ol,
|
|
ul ul, ol ol { margin-top: 0; margin-bottom: 0 }
|
|
br { content: "\A" }
|
|
|
|
@media print {
|
|
@page { margin: 10% }
|
|
blockquote,
|
|
pre { page-break-inside: avoid }
|
|
}
|
|
</pre>
|
|
|
|
|
|
|
|
<!-- ************************** -->
|
|
<!-- acknowledgements -->
|
|
<!-- ************************** -->
|
|
|
|
<h2 id="section-ack">9. Acknowledgements</h2>
|
|
<p>This section is informative.</p>
|
|
|
|
<p>This specification was prepared by the W3C CSS Working Group. The
|
|
participants at the time of publication were:</p>
|
|
<p><em>List will be inserted when this document becomes a Recommendation.</em></p>
|
|
|
|
<p>This specification is based on the specification of
|
|
the same name, <cite>CSS Print Profile</cite> [<a href="#ref_css_pp">CSSPP</a>] from
|
|
the <a href="http://www.pwg.org/">Printer Working Group</a>, a
|
|
program of and through the IEEE Industry Standards and Technology
|
|
Organization, Inc. The editor wishes
|
|
to express her gratitude to all those who contributed to it.</p>
|
|
|
|
<!-- ******************* -->
|
|
<!-- REFERENCES -->
|
|
<!-- ******************* -->
|
|
<h2 id="section-references">Appendix A. References</h2>
|
|
<h3 id="section-normref"> A.1 Normative References</h3>
|
|
<dl>
|
|
|
|
<dt class="normref" id="ref-css21">[CSS21] </dt> <dd><cite><a
|
|
href="http://www.w3.org/TR/2006/WD-CSS21-20060411/">Cascading Style
|
|
Sheets, Level 2, revision 1</a></cite>, B. Bos, <i>et al.</i>, World Wide Web
|
|
Consortium, 11 April 2006. Available at <a href="http://www.w3.org/TR/2006/WD-CSS21-20060411/">
|
|
http://www.w3.org/TR/2006/WD-CSS21-20060411/</a>. The <a
|
|
href="http://www.w3.org/TR/CSS21/">latest version</a> is
|
|
available at http://www.w3.org/TR/CSS21. </dd>
|
|
|
|
<dt class="normref" id="ref-pgmedia">[PAGEMEDIA]</dt>
|
|
<dd> <cite>
|
|
<a href="http://www.w3.org/TR/css3-page/">CSS3 Module: Paged Media</a></cite>,
|
|
W3C Working Draft, H. Lie and M. Grant, World Wide Web Consortium,
|
|
10 October 2006.
|
|
Available at
|
|
<a href="http://www.w3.org/TR/2006/WD-css3-page-20061010/">
|
|
http://www.w3.org/TR/2006/WD-css3-page-20061010</a>/.
|
|
The latest version is available at
|
|
<a href="http://www.w3.org/TR/css3-page/">
|
|
http://www.w3.org/TR/css3-page/
|
|
</a>.</dd>
|
|
|
|
<dt class="normref" id="ref-RFC2119">[RFC2119] </dt>
|
|
|
|
<dd><cite><a href="http://www.ietf.org/rfc/rfc2119.txt">RFC2119 -
|
|
Key words for use in RFCs to Indicate Requirement
|
|
Levels</a></cite>, S. Bradner, The Internet Engineering Task
|
|
Force, March 1997. It is available from <a
|
|
href="http://www.ietf.org/rfc/rfc2119.txt?number=2119">
|
|
http://www.ietf.org/rfc/rfc2119.txt?number=2119</a>
|
|
</dd>
|
|
|
|
<!-- Update link to point to CR, as soon as it is published: -->
|
|
|
|
</dl>
|
|
|
|
<h3 id="section-informref"> A.2 Informative References</h3>
|
|
<dl>
|
|
<dt id="ref_css_pp">[CSSPP]</dt>
|
|
<dd><cite><a
|
|
href="http://www.pwg.org/xhtml-print/HTML-Version/CSS-Print.html">CSS
|
|
Print Profile</a></cite>, PWG Proposed Standard 5102.2, D. Wright, J. Bigelow,
|
|
eds. 28 March 2003. Available at: <a
|
|
href="http://www.pwg.org/xhtml-print/HTML-Version/CSS-Print.html">
|
|
http://www.pwg.org/xhtml-print/HTML-Version/CSS-Print.html</a>
|
|
</dd>
|
|
|
|
<dt id="ref-cssmobile">[CSSMOBILE] </dt>
|
|
<dd><a href="http://www.w3.org/TR/css-mobile"> CSS Mobile Profile 1.0</a>,
|
|
W3C Candidate Recommendation 25 July 2002, T. Wugofski, D. Dominiak, R. Stark, T. Roy,
|
|
at <a href="http://www.w3.org/TR/css-mobile">http://www.w3.org/TR/css-mobile</a>. </dd>
|
|
|
|
<dt id="ref-html4">[HTML4] </dt>
|
|
<dd><cite><a
|
|
href="http://www.w3.org/TR/1999/REC-html401-19991224/">HTML 4.01
|
|
Specification</a></cite>, D. Raggett, A. Le Hors, and I.
|
|
Jacobs, Editors. World Wide Web Consortium, 17 December 1997, revised
|
|
24 December 1999. This version of the HTML 4.01 Recommendation is
|
|
http://www.w3.org/TR/1998/REC-html40-19980424. The <a
|
|
href="http://www.w3.org/TR/html4/">latest version of HTML
|
|
4</a> is available at http://www.w3.org/TR/html4.</dd>
|
|
|
|
<dt id="ref-XHTMLPrint">[XHTMLPRINT]</dt>
|
|
<dd><cite><a
|
|
href="http://www.w3.org/TR/2006/REC-xhtml-print-20060920/">
|
|
XHTML-Print</a></cite>,
|
|
W3C Recommendation, J. Bigelow and M. Grant, World Wide Web Consortium,
|
|
20 September 2006.
|
|
Available from
|
|
<a href="http://www.w3.org/TR/2006/REC-xhtml-print-20060920/">
|
|
http://www.w3.org/TR/2006/REC-xhtml-print-20060920/</a>.
|
|
The latest version is available at
|
|
<a href="http://www.w3.org/TR/xhtml-print/">
|
|
http://www.w3.org/TR/xhtml-print/</a>.</dd>
|
|
|
|
<dt> </dt>
|
|
</dl>
|
|
|
|
</body>
|
|
</html>
|