LibWeb: Resolve "height: auto" using preferred aspect ratio if possible

Fixes https://github.com/LadybirdBrowser/ladybird/issues/2276
This commit is contained in:
Aliaksandr Kalenik 2025-03-14 20:20:34 +01:00 committed by Alexander Kalenik
commit 08c155cd3f
Notes: github-actions[bot] 2025-03-15 12:52:15 +00:00
6 changed files with 55 additions and 11 deletions

View file

@ -2438,6 +2438,9 @@ CSSPixels GridFormattingContext::calculate_min_content_contribution(GridItem con
}
auto preferred_size = get_item_preferred_size(item, dimension);
if (dimension == GridDimension::Row && preferred_size.is_auto() && item.box->has_preferred_aspect_ratio()) {
return m_state.get(item.box).content_width() / item.box->preferred_aspect_ratio().value();
}
auto containing_block_size = containing_block_size_for_item(item, dimension);
auto result = item.add_margin_box_sizes(preferred_size.to_px(grid_container(), containing_block_size), dimension);
return min(result, maxium_size);