mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-04-22 12:35:14 +00:00
LibWeb: Allow absolute boxes to have a % height of a % height parent
Previously absolutely positioned boxes could only have a % height if their parent had a absolute height (a height in pixels, em, etc). This broke some websites/demos such as the "Francine CSS oil painting", which starts to appear after this commit. Francine: https://diana-adrianne.com/purecss-francine/
This commit is contained in:
parent
5049a56d96
commit
0e8dafcbb8
Notes:
sideshowbarker
2024-07-17 08:22:52 +09:00
Author: https://github.com/MacDue Commit: https://github.com/SerenityOS/serenity/commit/0e8dafcbb8 Pull-request: https://github.com/SerenityOS/serenity/pull/14796
1 changed files with 1 additions and 6 deletions
|
@ -658,7 +658,6 @@ void FormattingContext::compute_height_for_absolutely_positioned_non_replaced_el
|
|||
|
||||
// FIXME: The section below is partly on-spec, partly ad-hoc.
|
||||
auto& computed_values = box.computed_values();
|
||||
auto const& containing_block = *box.containing_block();
|
||||
|
||||
auto width_of_containing_block = containing_block_width_for(box);
|
||||
auto height_of_containing_block = containing_block_height_for(box);
|
||||
|
@ -675,12 +674,8 @@ void FormattingContext::compute_height_for_absolutely_positioned_non_replaced_el
|
|||
auto used_bottom = computed_bottom.resolved(box, height_of_containing_block_as_length).resolved(box).to_px(box);
|
||||
auto tentative_height = CSS::Length::make_auto();
|
||||
|
||||
if (computed_values.height().is_percentage()
|
||||
&& !(containing_block.computed_values().height().is_length() && containing_block.computed_values().height().length().is_absolute())) {
|
||||
// tentative_height is already auto
|
||||
} else {
|
||||
if (!computed_height.is_auto())
|
||||
tentative_height = computed_values.height().resolved(box, height_of_containing_block_as_length).resolved(box);
|
||||
}
|
||||
|
||||
auto& box_state = m_state.get_mutable(box);
|
||||
box_state.margin_top = computed_values.margin().top.resolved(box, width_of_containing_block_as_length).to_px(box);
|
||||
|
|
Loading…
Add table
Reference in a new issue