Skip to content

Commit 62cbd14

Browse files
committed
[css-tables-3] Attempt to make repeated headers/footers work
You need to include the header as content rows if you cannot fit it entirely in one page; same applies for the footer once you have exhausted the body rows
1 parent f475f33 commit 62cbd14

File tree

1 file changed

+21
-6
lines changed

1 file changed

+21
-6
lines changed

css-tables-3/Overview.bs

+21-6
Original file line numberDiff line numberDiff line change
@@ -2464,10 +2464,12 @@ spec:css22; type:property; text:display
24642464
<h3 id="repeated-headers">Repeating headers across pages</h3>
24652465

24662466
When rendering the document into a paged media,
2467-
user agents must repeat
2467+
user agents must try to repeat
24682468
<a href="#table-header-group">header rows</a> and
24692469
<a href="#table-footer-group">footer rows</a>
2470-
on each page spanned by a table.
2470+
on each page spanned by a table
2471+
where at least one header row or body row
2472+
was considered to be a <a>content row</a>.
24712473

24722474
When the header rows are being repeated, user agents must
24732475
leave room and if needed render the table top border.
@@ -2478,11 +2480,24 @@ spec:css22; type:property; text:display
24782480
<figcaption>Expected rendering of table with headers and footers fragmented across two pages</figcaption>
24792481
</figure>
24802482

2481-
When doing so doesn't leave enough space to insert at least one content row,
2482-
users agents must drop the repeated footer.
2483+
When doing so doesn't leave enough space to insert at least one <a>content row</a>,
2484+
users agents must drop the footer rows which are not content rows (possibly all of them).
24832485

2484-
When doing so still doesn't leave enough space to insert at least one content row,
2485-
users agents must drop the repeated header.
2486+
When doing so still doesn't leave enough space to insert at least one <a>content row</a>,
2487+
users agents must drop the header rows which are not content rows (possibly all of them).
2488+
2489+
2490+
In a given fragmentainer, a table row is considered a <dfn>content row candidate</dfn> if
2491+
it hasn't been included yet in a preceding fragmentainer where it was considered a content row
2492+
(if no preceding fragmentainer exists, all table rows are considered content row candidates);
2493+
2494+
In a given fragmentainer, a table row is considered a <dfn>content row</dfn> if it is in the set of
2495+
all <a>content row candidate</a>s from the table header, if any;
2496+
otherwise, all <a>content row candidate</a>s from the table bodies, if any;
2497+
otherwise, all <a>content row candidate</a>s from the table footer, if any.
2498+
2499+
User agents may consider all header rows and footer rows
2500+
to form an unfragmentable block, to enable rendering the headers and footers the same way on each page.
24862501

24872502
<p class="advisement">
24882503
User agents may decide to extend this behavior to every fragmentation context,

0 commit comments

Comments
 (0)