fn solve_clearance_and_inline_margins_avoiding_floats(
    sequential_layout_state: &SequentialLayoutState,
    block_start_margin: &CollapsedMargin,
    containing_block: &ContainingBlock<'_>,
    pbm: &PaddingBorderMargin,
    size: LogicalVec2<Au>,
    style: &Arc<ComputedValues>,
) -> (Option<Au>, (Au, Au), Au)
Expand description

A block-level element that establishes an independent formatting context (or is replaced) must not overlap floats. This can be achieved by adding clearance (to adjust the position in the block axis) and/or modifying the margins in the inline axis. This function takes care of calculating them.