forked from w3c/csswg-drafts
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathOverview.bs
More file actions
109 lines (94 loc) · 4.11 KB
/
Overview.bs
File metadata and controls
109 lines (94 loc) · 4.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
<pre class=metadata>
Title: Proposals for the future of CSS Paged Media
Shortname: css-page
Level: 4
Group: csswg
Status: UD
Work Status: exploring
ED: https://drafts.csswg.org/css-page-4/
Editor: Daniel Glazman, Disruptive Innovations
Abstract: A list of issues with the current CSS page model, and possibly directions to explore for fixing it.
</pre>
<h2 id=css-page-model>The CSS 3 Page Model</h2>
This section is informative.
The current Page Model,
as described in <cite>CSS3 Module: Paged Media </cite>[[!CSS3PAGE]],
is the following one:
the printable area of a page,
the <dfn export>page box</dfn>,
is made of one page box itself divided in four areas:
<figure>
<img src="images/PageBox.png" width="267" height="266"
alt="CSS 3 Paged Media's page model">
<figcaption>The CSS3 Page Model</figcaption>
</figure>
1. the <dfn export>page margin</dfn>;
that area is itself divided into 16 <dfn export>page-margin boxes</dfn>
(@top-left-corner, @top-left, @top-center, etc. )
<figure>
<img src="images/RightMarginBoxes.png" width="181" height="226">
alt="CSS 3 page-margin boxes">
<figcaption>The 16 page-margin boxes<br>
(with highlight of 3 of them)<br>
</figcaption>
</figure>
2. the <dfn export>page border</dfn>
3. the <dfn export>page padding</dfn>
4. and finally the <dfn export>page area</dfn>
containing the boxes generated by
the flow of the main contents of the document.
It's is possible to flow content,
for instance page headers and footers or footnotes,
into a page-margin box
using features introduced by the
<cite>CSS Generated Content for Paged Media Module </cite>[[!CSS3GCPM]].
It is also possible to define multiple page templates for a single document
using the <span class="css">@page</span> at-rule
that allows to select the
first page, left pages, right pages or named pages of a paginated flow.
If this page model allowed the publishing industry to adopt HTML and CSS as pivot formats,
it starts showing its limits for the following reasons:
* the 16 page-margin boxes are an extension
of the print features offered by desktop browsers.
Desktop browsers usually offer control over 6 page-margin boxes only.
Only one desktop browser claims implementation
of the page model described above in the fourteen last years.
The other desktop browsers' control over the 6 page-margin boxes
is then not achieved through the cascade of CSS UA stylesheets.
* no editing environment available on the market
and in particular Wysiwyg text editor
(for instance like Microsoft Word)
implements such a box model.
* it's not possible with the current model to position headers and footers
(for instance the HTML5 header and footer elements)
arbitrarily in the page area.
* the ''@page'' at-rule currently allows nested at-rules
only for the definition of page-margin boxes.
Similarly, the set of CSS properties applicable to a page box
is limited and it is impossible in this model to use
<cite>CSS Regions Module Level 3</cite> [[!CSS3-REGIONS]]
to flow content into a given predefined area of a page,
exclude an area from the page using
<cite>CSS 3 Exclusions and Shapes Module</cite> [[!CSS3-EXCLUSIONS]],
lay out the page area into a grid using
<cite>CSS Grid Layout</cite> [[!CSS3-GRID-LAYOUT]]
or using ''@slot'' rules
that were discussed multiple times by the CSS Working Group
in the recent past.
The successful electronic book editing environment of Apple Inc.,
iBooks Author,
already allows ''@page'' rules to specify
arbitrary slots,
arbitrary exclusions and shapes,
and extends the list of applicable properties;
most of its advanced layout capabilities are based on these features.
* the ''@page'' rule of <cite>CSS 2.1</cite> [[!CSS21]]
is intended for use on print media,
not dynamic media.
The spread of complex HTML-based slideshows and electronic book viewers
has shown that the Page Model should also apply to screen media and alike.
* ++TBD
<h2 class=no-num id=privacy>Privacy Considerations</h2>
No new privacy considerations have been reported on this specification.
<h2 class=no-num id=security>Security Considerations</h2>
No new security considerations have been reported on this specification.