LibWeb: Add fit-content as a valid size value for CSS width

This commit is contained in:
Andreas Kling 2023-05-26 18:58:06 +02:00
parent 1dfb065a9c
commit 09eb3ef405
Notes: sideshowbarker 2024-07-16 20:08:14 +09:00
5 changed files with 12 additions and 1 deletions

View File

@ -118,6 +118,7 @@
"fantasy",
"fast",
"fine",
"fit-content",
"fixed",
"flex",
"flex-end",

View File

@ -1663,7 +1663,8 @@
"percentage [0,∞]"
],
"valid-identifiers": [
"auto"
"auto",
"fit-content"
],
"quirks": [
"unitless-length"

View File

@ -64,6 +64,12 @@ Size Size::make_fit_content(Length available_space)
return Size { Type::FitContent, move(available_space) };
}
Size Size::make_fit_content()
{
// NOTE: We use "auto" as a stand-in for "stretch" here.
return Size { Type::FitContent, Length::make_auto() };
}
Size Size::make_none()
{
return Size { Type::None, Length::make_auto() };

View File

@ -33,6 +33,7 @@ public:
static Size make_min_content();
static Size make_max_content();
static Size make_fit_content(Length available_space);
static Size make_fit_content();
static Size make_none();
bool is_auto() const { return m_type == Type::Auto; }

View File

@ -72,6 +72,8 @@ CSS::Size StyleProperties::size_value(CSS::PropertyID id) const
return CSS::Size::make_min_content();
case ValueID::MaxContent:
return CSS::Size::make_max_content();
case ValueID::FitContent:
return CSS::Size::make_fit_content();
case ValueID::None:
return CSS::Size::make_none();
default: