Module float

Source
Expand description

Float layout.

See CSS 2.1 § 9.5.1: https://www.w3.org/TR/CSS2/visuren.html#float-position

Structs§

ContainingBlockPositionInfo
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.
FloatBand
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”.
FloatBandLink
A single edge (or lack thereof) in the float band tree.
FloatBandNode
A single node in the float band tree.
FloatBandTree
A persistent AA tree for float band storage.
FloatBox 🔒
A floating box.
FloatContext
Data kept during layout about the floats in a given block formatting context.
PlacementAmongFloats 🔒
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.
PlacementInfo
Information needed to place a float so that it doesn’t collide with existing floats.
SequentialLayoutState 🔒
Layout state that we maintain when doing sequential traversals of the box tree in document order.

Enums§

Clear
FloatSide
Whether the float is aligned to the inline-start or inline-end side of its containing block.