- From: MURAKAMI Shinyu <murakami@antenna.co.jp>
- Date: Mon, 05 Jan 2009 12:58:36 +0900
- To: Håkon Wium Lie <howcome@opera.com>
- Cc: www-style@w3.org
Håkon Wium Lie <howcome@opera.com> wrote on 2009/01/04 23:10:04
> > I expect the top-float is floated to the top of the current column.
>
> Yes.
>
> > But that is not obvious in the GCPM spec.
>
> Right. However, the multicol specification [1] says:
>
> Floats that appear inside multi-column layouts are positioned with
> regard to the column box where the float appears.
>
> [1] http://dev.w3.org/csswg/css3-multicol/
>
> > My proposal:
> > When the float property value has a vertical keyword (top, bottom) and
> > has no reference keyword (page, multi-column), the containing block is
> > formed by the content edge of the nearest box that is a column box or
> > is a "flow root" defined in the CSS3 basic box model [3] or page area.
> > In vertical text, a horizontal keyword is vice versa.
>
> Again, from the multicol specification [1]:
>
> Column boxes act like block-level, table cell, and inline-block
> boxes as per CSS 2.1, section 10.1, item 2 [CSS21]. As a result,
> floats are positioned with regard to the column box. However, the
> column box does not establish a containing block for elements with
> 'position: fixed' or 'position: absolute'.
>
> So, there are reasons to not make the column box a containing block.
>
> However, I agree that GCPM should state that floats float within the
> column box unless "page" or "multi-column" is specified. I propose to
> express it in the description of "page" and "multi-column":
>
> <dt>page
>
> <dd>This keyword indicates that the page box (and not the column
> box) acts as containing block for the purpose of 'float'
>
> <dt>multi-column
>
> <dd>This keyword indicates that the multi-column element (and not
> the column box) acts as containing block for the purpose of 'float'
>
> Could this work?
Some questions:
If column box does not exist, i.e., no multi-column elements, is
'float: top' equivalent to 'float: top page'?
Table-cells, inline-blocks, floats, and absolute/fixed positioned boxes
do not act as containing block for the purpose of 'float: top'?
Example:
<table>
<tr>
<td>table-cell
<div style="float:top">top-float in table-cell</div>
</td>
</tr>
</table>
Is this top-float floated to the top of the page, or to the top of the
table-cell?
--
Shinyu Murakami
http://www.antennahouse.com
http://www.antenna.co.jp/AHF/
Received on Monday, 5 January 2009 03:59:40 UTC