W3C home > Mailing lists > Public > www-style@w3.org > April 2015

Re: [css-page-floats] First cleanup

From: Håkon Wium Lie <howcome@opera.com>
Date: Tue, 7 Apr 2015 22:01:15 +0200
Message-ID: <21796.14219.737692.314245@opera.com>
To: Johannes Wilm <johanneswilm@vivliostyle.com>
Cc: www-style list <www-style@w3.org>, public-ppl@w3.org
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.
 > 
 > I can also see that Inside/outside can be helpful, but this is for page
 > based media in general, not specific for floats. And from what I can tell,
 > the same effect can be achieved by setting separate styles for @page :right
 > and @page :left, right?

That's different. Floting inside/outside lets you do things like:

  aside {
    float: outside;
    float-offset: -80mm;
    width: 75mm;
  }

To float sidnotes into the outside column. 

 > > 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.

Can't we just say that "inside" and "outside" are alises for "left"
and "right", depending on which page the float ends up on?

Prince and AntennaHouse have implemented these, so I don't think it's
awfully hard. (Their programmers may correct me on this.)

  http://www.princexml.com/doc/properties/float/
  http://www.antennahouse.com/product/ahf60/docs/ahf-float.html

-h&kon
              Håkon Wium Lie                          CTO °þe®ª
howcome@opera.com                  http://people.opera.com/howcome
Received on Tuesday, 7 April 2015 20:01:45 UTC

This archive was generated by hypermail 2.3.1 : Monday, 2 May 2016 14:39:30 UTC