1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
2 <html>
3 <head>
4 <title>CSS Test: allowed page breaks between blocks</title>
5 <link rel="author" title="Elika J. Etemad" href="http://fantasai.inkedblade.net/contact">
6 <link rel="help" href="http://www.w3.org/TR/CSS21/page.html#page-break-props">
7 <link rel="help" href="http://www.w3.org/TR/css3-page/#allowed-pg-brk">
8 <meta name="assert" content="Unforced breaking in the vertical margin between sibling block boxes is allowed only if the 'page-break-after' and 'page-break-before' properties of all the elements generating boxes that meet at this margin are 'auto' and the common ancestors of all the elements do not have a 'page-break-inside' value of 'avoid'.">
9 <meta name="flags" content="paged">
10 <style type="text/css">
11 html, body { height: 100%; line-height: 1; font-size: 20px; margin: 0; padding: 0; }
12 .spacer { height: 50%; }
13 .backup { margin-top: -1em; }
14 .start { page-break-before: always; }
15
16 p {
17 margin: 0;
18 color: blue;
19 }
20
21 .avoidBefore { page-break-before: avoid; }
22 .avoidAfter { page-break-after: avoid; }
23 .avoidInside { page-break-inside: avoid; }
24 .allowInside { page-break-inside: auto; }
25 </style>
26 </head>
27 <body>
28 <div class="spacer">
29 Lines A-Z must appear on the 18 pages of this test. The blue text
30 must accurately describe the page numbers.
31 </div><div class="spacer backup"></div>
32 <div class="avoidInside">
33 <p>Page 2 Line A</p>
34 <p>Page 2 Line B</p>
35 </div>
36
37 <div class="spacer start">
38 <p>Page 3 Line C</p>
39 </div><div class="spacer backup"></div>
40 <div class="avoidInside"><div><div><div><div><div><div class="allowInside">
41 <p>Page 4 Line D</p>
42 <p>Page 4 Line E</p>
43 </div></div></div></div></div></div></div>
44
45 <div class="spacer start">
46 <p>Page 5 Line F</p>
47 </div><div class="spacer backup"></div>
48 <div class="allowInside">
49 <p>Page 5 Line G</p>
50 <p>Page 6 Line H</p>
51 </div>
52
53 <div class="spacer start">
54 <p>Page 7 Line I</p>
55 </div><div class="spacer backup"></div>
56 <p class="avoidAfter">Page 8 Line J</p>
57 <p>Page 8 Line K</p>
58
59 <div class="spacer start">
60 <p>Page 9 Line L</p>
61 </div><div class="spacer backup"></div>
62 <p>Page 10 Line M</p>
63 <p class="avoidBefore">Page 10 Line N</p>
64
65 <div class="spacer start">
66 <p>Page 11 Line O</p>
67 </div><div class="spacer backup"></div>
68 <div class="avoidAfter"><div>
69 <p>Page 12 Line P</p>
70 </div></div>
71 <p>Page 12 Line Q</p>
72
73 <div class="spacer start">
74 <p>Page 13 Line R</p>
75 </div><div class="spacer backup"></div>
76 <p>Page 14 Line S</p>
77 <div class="avoidBefore"><div>
78 <p>Page 14 Line T</p>
79 </div></div>
80
81 <div class="spacer start">
82 <p>Page 15 Line U</p>
83 </div><div class="spacer backup"></div>
84 <div><div>
85 <p class="avoidAfter">Page 16 Line V</p>
86 </div></div>
87 <p>Page 16 Line W</p>
88
89 <div class="spacer start">
90 <p>Page 17 Line X</p>
91 </div><div class="spacer backup"></div>
92 <p>Page 18 Line Y</p>
93 <div><div>
94 <p class="avoidBefore">Page 18 Line Z</p>
95 </div></div>
96 </body>
97 </html>