-
Notifications
You must be signed in to change notification settings - Fork 357
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Issue #364 Implement footnotes at bottom of page #711
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Test kindly provided by @a-leithner
Still struggling with correct counter-reset behavior.
Still needs loads of work but sample is rendering something.
Also cleanup and minor extract-method refactor.
Specifically, line boxes that meet with footnotes will now behave somewhat correctly.
Closed
Also box spliterator for descendants.
Placement and link destination.
…y in-flow layers.
We are now using a normal layer rather than painting footnotes separately as that approach did not work when the footnote area went over multiple pages.
This is to deal with multi-page footnote areas, which are now mostly working. We now reserve entire pages when footnotes flow over multiple pages.
Plus: Overhauled BlockBoxing while trying to fix issue. Now better performance and cleaner code. Added benchmarks for BlockBoxing.
…tes. Also cleanup and documentation around styling code.
This was referenced Jun 16, 2021
Table footer is overlapping footnote area.
It is sitting above the footnotes.
Or even as the footnote element itself.
…eracting with footnotes. Minor fix to prevent anchor element being stripped from footnote calls which are floated.
With more work on correct boxing, so that images may now be used as footnote calls and footnote markers.
Since we wrap generated content correctly now, one can use a border on the generated content box (such as before or after) and get Chrome matching results, rather than a border on each item in the content property list. With test proof: Test for pseudo elements with different display values. Test for using an image as footnote-call. Test for using an image as footnote-marker.
Tests non-paginated table content works inside footnote body as well as footnotes being called from inside an in-flow table. Also tests use of before and after pseudo elements in the footnote element.
Footnotes seem to cause problems with the destination of in-flow targets.
…ved. Problem was that when a pending box was added, then removed from a line, it link target was not being removed. Also some documentation and cleanup.
By processing them as non-footnote content.
Footnotes should be display: block, position: static, float: none and non-replaced. Treat invalid elements as normal content. With test proof.
Unsupported but does not cause infinite loop, OOM, etc.
So it picks up orphans and widows. Also proof for footnotes basic test.
Multi-page output is correct. Single page output produces footnotes in between content which is nonsensical but we are primarily a paged renderer.
Footnote terminologyImage Copyright © 2015 W3C® (MIT, ERCIM, Keio, Beihang). This software or document includes material copied from or derived from CSS Generated Content for Paged Media Module. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Now documented on the wiki under footnotes.
Fixes #364.
Finally ready!
Need tests and fixes for:Performance:
Blockers:
More:
Inside footnotes:
As footnote element:
In normal flow meeting footnotes:
page-break-inside: avoid
is set. However, footnote area is on top.Also
This markup:
will result in something like this: