Re: [css-page-floats] First cleanup

On Tue, Apr 7, 2015 at 6:12 PM, Håkon Wium Lie <howcome@opera.com> wrote:

> Johannes Wilm wrote:
>
>
> [...]



> The inside/outside keywords on float have also been removed in the
> draft. They're quite useful, and to me they are core to page floats.
> Using them, you can make sidenotes like in this document:

[...]

>From what I can tell, for sidenotes one would need very specific placement
rules, which for European text would start something like:

1. Sidenotes are placed to the right or left of their float reference so
that they are always on the outside part of the page.
2. If they cannot be placed where they were placed according to 1 because
another sidenote is already covering that part of the margin, they will
need to be me moved below the last sidenote that was placed in that margin.
3. If a sidenote on a page hits the bottom edge, it needs to be moved up so
that it fits on the page in its entirety, which means that all previous
sidenotes on the same page may need to be moved further up.
4. 3 has to be repeated for every extra sidenode that would otherwise have
to be placed beyond the bottom edge of the page
5. If 3/4 result in the first sidenote on the page to be moved further up
than where the body text of the page starts, the movements done in 3/4
 have to be reverted until the first side node fits on the page and all
side nodes that then fall below the bottom edge of the page will have to be
moved to the next page instead.
6. If one single side node is taller then the entire height of the part of
the page where the body text is placed, then break it into several pieces,
according to principle X.

And so on. This is a level of complexity that will be interesting to some
who are specifically into print (like us), but possibly not to everyone
else to the same degree. That's why the thought was to try to get some of
the more fundamental building blocks into this spec so that the more
complex things can be added at a later stage on top of it. In the meantime
they can be achieved by combining Javascript with CSS on the pages where
they are really needed.

Received on Tuesday, 7 April 2015 19:03:21 UTC