.app-privacy__card) [8,8 392x100]
diff --git a/Tests/LibWeb/Layout/input/grid/item-max-width.html b/Tests/LibWeb/Layout/input/grid/item-max-width.html
new file mode 100644
index 0000000000..3d091230f5
--- /dev/null
+++ b/Tests/LibWeb/Layout/input/grid/item-max-width.html
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/Tests/LibWeb/Layout/input/grid/item-min-width.html b/Tests/LibWeb/Layout/input/grid/item-min-width.html
new file mode 100644
index 0000000000..10fda21871
--- /dev/null
+++ b/Tests/LibWeb/Layout/input/grid/item-min-width.html
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/Userland/Libraries/LibWeb/Layout/GridFormattingContext.cpp b/Userland/Libraries/LibWeb/Layout/GridFormattingContext.cpp
index bd8d940c49..cfaf032ae2 100644
--- a/Userland/Libraries/LibWeb/Layout/GridFormattingContext.cpp
+++ b/Userland/Libraries/LibWeb/Layout/GridFormattingContext.cpp
@@ -1626,6 +1626,21 @@ void GridFormattingContext::resolve_grid_item_widths()
} else {
used_width = try_compute_width(computed_width.to_px(grid_container(), containing_block_width));
}
+
+ if (!should_treat_max_width_as_none(item.box, m_available_space->width)) {
+ auto max_width = try_compute_width(computed_values.max_width().to_px(grid_container(), containing_block_width));
+ if (used_width > max_width) {
+ used_width = max_width;
+ }
+ }
+
+ if (!computed_values.min_width().is_auto()) {
+ auto min_width = try_compute_width(computed_values.min_width().to_px(grid_container(), containing_block_width));
+ if (used_width < min_width) {
+ used_width = min_width;
+ }
+ }
+
box_state.set_content_width(used_width);
}
}