fn solve_inline_margins_for_in_flow_block_level(
    containing_block: &ContainingBlock<'_>,
    pbm: &PaddingBorderMargin,
    inline_size: Au,
) -> ((Au, Au), Au)
Expand description

Resolves ‘auto’ margins of an in-flow block-level box in the inline axis, distributing the free space in the containing block.

This is based on CSS2.1 § 10.3.3 https://drafts.csswg.org/css2/#blockwidth but without adjusting the margins in “over-contrained” cases, as mandated by https://drafts.csswg.org/css-align/#justify-block.

Note that in the presence of floats, this shouldn’t be used for a block-level box that establishes an independent formatting context (or is replaced).

In addition to the used margins, it also returns the effective margin-inline-start (see ContainingBlockPaddingAndBorder).