diff --git a/Userland/Libraries/LibWeb/HTML/HTMLIFrameElement.cpp b/Userland/Libraries/LibWeb/HTML/HTMLIFrameElement.cpp
index 516b350ca9..5d5eb7e18a 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLIFrameElement.cpp
+++ b/Userland/Libraries/LibWeb/HTML/HTMLIFrameElement.cpp
@@ -46,7 +46,7 @@ void HTMLIFrameElement::inserted()
HTMLElement::inserted();
// When an iframe element element is inserted into a document whose browsing context is non-null, the user agent must run these steps:
- if (document().browsing_context()) {
+ if (in_a_document_tree() && document().browsing_context()) {
// 1. Create a new child navigable for element.
MUST(create_new_child_navigable());