diff --git a/Libraries/LibHTML/Layout/LayoutDocument.cpp b/Libraries/LibHTML/Layout/LayoutDocument.cpp
index a734dca5b5..7f3717ce67 100644
--- a/Libraries/LibHTML/Layout/LayoutDocument.cpp
+++ b/Libraries/LibHTML/Layout/LayoutDocument.cpp
@@ -12,5 +12,13 @@ LayoutDocument::~LayoutDocument()
void LayoutDocument::layout()
{
rect().set_width(style().size().width());
+
LayoutNode::layout();
+
+ int lowest_bottom = 0;
+ for_each_child([&](auto& child) {
+ if (child.rect().bottom() > lowest_bottom)
+ lowest_bottom = child.rect().bottom();
+ });
+ rect().set_bottom(lowest_bottom);
}