diff --git a/Tests/LibWeb/Text/expected/HTML/DOMParser-parseFromString-document-url.txt b/Tests/LibWeb/Text/expected/HTML/DOMParser-parseFromString-document-url.txt
new file mode 100644
index 00000000000..fc9aea9c083
--- /dev/null
+++ b/Tests/LibWeb/Text/expected/HTML/DOMParser-parseFromString-document-url.txt
@@ -0,0 +1,2 @@
+PASS text/html
+PASS application/xhtml+xml
diff --git a/Tests/LibWeb/Text/input/HTML/DOMParser-parseFromString-document-url.html b/Tests/LibWeb/Text/input/HTML/DOMParser-parseFromString-document-url.html
new file mode 100644
index 00000000000..f3cacc504a3
--- /dev/null
+++ b/Tests/LibWeb/Text/input/HTML/DOMParser-parseFromString-document-url.html
@@ -0,0 +1,19 @@
+
+
diff --git a/Userland/Libraries/LibWeb/DOM/Document.cpp b/Userland/Libraries/LibWeb/DOM/Document.cpp
index 4242a0f7b3e..3a69696c545 100644
--- a/Userland/Libraries/LibWeb/DOM/Document.cpp
+++ b/Userland/Libraries/LibWeb/DOM/Document.cpp
@@ -5415,8 +5415,7 @@ void Document::parse_html_from_a_string(StringView html)
auto parser = HTML::HTMLParser::create(*this, html, "UTF-8"sv);
// 4. Start parser and let it run until it has consumed all the characters just inserted into the input stream.
- // FIXME: This is to match the default URL. Instead, pass in this's relevant global object's associated Document's URL.
- parser->run("about:blank"sv);
+ parser->run(verify_cast(HTML::relevant_global_object(*this)).associated_document().url());
}
// https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html#dom-parsehtmlunsafe