Module layout_2020::flow::float
source · Expand description
Float layout.
See CSS 2.1 § 9.5.1: https://www.w3.org/TR/CSS2/visuren.html#float-position
Structs§
FloatContext
positions floats relative to the independent block formatting context which contains the floating elements. The Fragment tree positions elements relative to their containing blocks. This data structure is used to help map between these two coordinate systems.- Internal data structure that describes a nonoverlapping vertical region in which floats may be placed. Floats must go between “inline-start edge +
inline_start
” and “inline-end edge -inline_end
”. - A single edge (or lack thereof) in the float band tree.
- A single node in the float band tree.
- A persistent AA tree for float band storage.
- Float
Box 🔒A floating box. - Data kept during layout about the floats in a given block formatting context.
- This data strucure is used to try to place non-floating content among float content. This is used primarily to place replaced content and independent formatting contexts next to floats, as the specifcation dictates.
- Information needed to place a float so that it doesn’t collide with existing floats.
- Layout state that we maintain when doing sequential traversals of the box tree in document order.
Enums§
- Whether the float is aligned to the inline-start or inline-end side of its containing block.