LibWeb: Parse CSS gap property

Including the legacy grid-gap, grid-column-gap and grid-row-gap
properties.
This commit is contained in:
martinfalisse 2022-11-06 12:42:22 +01:00 committed by Andreas Kling
commit 9e6612c49b
Notes: sideshowbarker 2024-07-17 04:43:50 +09:00
5 changed files with 131 additions and 0 deletions

View file

@ -544,6 +544,28 @@ static void set_property_expanding_shorthands(StyleProperties& style, CSS::Prope
return;
}
if (property_id == CSS::PropertyID::Gap || property_id == CSS::PropertyID::GridGap) {
if (value.is_value_list()) {
auto const& values_list = value.as_value_list();
style.set_property(CSS::PropertyID::RowGap, values_list.values()[0]);
style.set_property(CSS::PropertyID::ColumnGap, values_list.values()[1]);
return;
}
style.set_property(CSS::PropertyID::RowGap, value);
style.set_property(CSS::PropertyID::ColumnGap, value);
return;
}
if (property_id == CSS::PropertyID::RowGap || property_id == CSS::PropertyID::GridRowGap) {
style.set_property(CSS::PropertyID::RowGap, value);
return;
}
if (property_id == CSS::PropertyID::ColumnGap || property_id == CSS::PropertyID::GridColumnGap) {
style.set_property(CSS::PropertyID::ColumnGap, value);
return;
}
style.set_property(property_id, value);
}