diff --git a/Tests/LibWeb/Text/expected/get-bounding-client-rect-display-none.txt b/Tests/LibWeb/Text/expected/get-bounding-client-rect-display-none.txt
index a986c65cdc5..c602184bcaf 100644
--- a/Tests/LibWeb/Text/expected/get-bounding-client-rect-display-none.txt
+++ b/Tests/LibWeb/Text/expected/get-bounding-client-rect-display-none.txt
@@ -1 +1,3 @@
+
{"x":0,"y":0,"width":0,"height":0,"top":0,"right":0,"bottom":0,"left":0}
+{"x":0,"y":0,"width":0,"height":0,"top":0,"right":0,"bottom":0,"left":0}
diff --git a/Tests/LibWeb/Text/input/get-bounding-client-rect-display-none.html b/Tests/LibWeb/Text/input/get-bounding-client-rect-display-none.html
index 3569cbc8798..01c784cd039 100644
--- a/Tests/LibWeb/Text/input/get-bounding-client-rect-display-none.html
+++ b/Tests/LibWeb/Text/input/get-bounding-client-rect-display-none.html
@@ -3,10 +3,14 @@
#box { display: none; }
+
diff --git a/Userland/Libraries/LibWeb/DOM/Element.cpp b/Userland/Libraries/LibWeb/DOM/Element.cpp
index a43d60bcaeb..1e0d1295319 100644
--- a/Userland/Libraries/LibWeb/DOM/Element.cpp
+++ b/Userland/Libraries/LibWeb/DOM/Element.cpp
@@ -884,16 +884,16 @@ JS::NonnullGCPtr Element::get_client_rects() const
const_cast(document()).update_paint_and_hit_testing_properties_if_needed();
Gfx::AffineTransform transform;
- if (auto const* paintable_box = this->paintable_box())
- transform = Gfx::extract_2d_affine_transform(paintable_box->transform());
CSSPixelPoint scroll_offset;
- for (auto const* containing_block = paintable()->containing_block(); containing_block; containing_block = containing_block->containing_block()) {
- transform = Gfx::extract_2d_affine_transform(containing_block->transform()).multiply(transform);
- scroll_offset.translate_by(containing_block->scroll_offset());
- }
-
auto const* paintable = this->paintable();
+
if (auto const* paintable_box = this->paintable_box()) {
+ transform = Gfx::extract_2d_affine_transform(paintable_box->transform());
+ for (auto const* containing_block = paintable->containing_block(); containing_block; containing_block = containing_block->containing_block()) {
+ transform = Gfx::extract_2d_affine_transform(containing_block->transform()).multiply(transform);
+ scroll_offset.translate_by(containing_block->scroll_offset());
+ }
+
auto absolute_rect = paintable_box->absolute_border_box_rect();
auto transformed_rect = transform.map(absolute_rect.translated(-paintable_box->transform_origin()).to_type())
.to_type()