diff --git a/Libraries/LibWeb/HTML/Parser/HTMLParser.cpp b/Libraries/LibWeb/HTML/Parser/HTMLParser.cpp
index be21f5b48e058..4b03470829a6e 100644
--- a/Libraries/LibWeb/HTML/Parser/HTMLParser.cpp
+++ b/Libraries/LibWeb/HTML/Parser/HTMLParser.cpp
@@ -338,6 +338,9 @@ void HTMLParser::the_end(GC::Ref document, GC::Ptr pa
return !document->anything_is_delaying_the_load_event();
}));
+ // FIXME: Spec bug: https://github.com/whatwg/html/issues/10914
+ document->scroll_to_the_fragment();
+
// 9. Queue a global task on the DOM manipulation task source given the Document's relevant global object to run the following steps:
queue_global_task(HTML::Task::Source::DOMManipulation, *document, GC::create_function(document->heap(), [document, parser] {
// 1. Update the current document readiness to "complete".
diff --git a/Tests/LibWeb/Text/expected/wpt-import/dom/nodes/ParentNode-querySelector-All.txt b/Tests/LibWeb/Text/expected/wpt-import/dom/nodes/ParentNode-querySelector-All.txt
index 58b8a586545ef..aefda0483a4c4 100644
--- a/Tests/LibWeb/Text/expected/wpt-import/dom/nodes/ParentNode-querySelector-All.txt
+++ b/Tests/LibWeb/Text/expected/wpt-import/dom/nodes/ParentNode-querySelector-All.txt
@@ -2,8 +2,8 @@ Harness status: OK
Found 1975 tests
-1955 Pass
-20 Fail
+1959 Pass
+16 Fail
Pass Selectors-API Test Suite: HTML
Pass Document supports querySelector
Pass Document supports querySelectorAll
@@ -601,8 +601,8 @@ Pass Document.querySelectorAll: :link and :visited pseudo-class selectors, match
Pass Document.querySelector: :link and :visited pseudo-class selectors, matching a and area elements with href attributes: #pseudo-link :link, #pseudo-link :visited
Pass Document.querySelectorAll: :link and :visited pseudo-class selectors, matching no elements: #head :link, #head :visited
Pass Document.querySelector: :link and :visited pseudo-class selectors, matching no elements: #head :link, #head :visited
-Fail Document.querySelectorAll: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target
-Fail Document.querySelector: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target
+Pass Document.querySelectorAll: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target
+Pass Document.querySelector: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target
Pass Document.querySelectorAll: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en)
Pass Document.querySelector: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en)
Pass Document.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)
@@ -1893,8 +1893,8 @@ Pass In-document Element.querySelectorAll: :link and :visited pseudo-class selec
Pass In-document Element.querySelector: :link and :visited pseudo-class selectors, not matching link elements with href attributes: #head :link, #head :visited
Pass In-document Element.querySelectorAll: :link and :visited pseudo-class selectors, chained, mutually exclusive pseudo-classes match nothing: :link:visited
Pass In-document Element.querySelector: :link and :visited pseudo-class selectors, chained, mutually exclusive pseudo-classes match nothing: :link:visited
-Fail In-document Element.querySelectorAll: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target
-Fail In-document Element.querySelector: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target
+Pass In-document Element.querySelectorAll: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target
+Pass In-document Element.querySelector: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target
Pass In-document Element.querySelectorAll: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en)
Pass In-document Element.querySelector: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en)
Pass In-document Element.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)
diff --git a/Tests/LibWeb/Text/expected/wpt-import/url/data-uri-fragment.txt b/Tests/LibWeb/Text/expected/wpt-import/url/data-uri-fragment.txt
new file mode 100644
index 0000000000000..495399b301f23
--- /dev/null
+++ b/Tests/LibWeb/Text/expected/wpt-import/url/data-uri-fragment.txt
@@ -0,0 +1,6 @@
+Harness status: OK
+
+Found 1 tests
+
+1 Pass
+Pass Data URI parsing of fragments
\ No newline at end of file
diff --git a/Tests/LibWeb/Text/input/wpt-import/url/data-uri-fragment.html b/Tests/LibWeb/Text/input/wpt-import/url/data-uri-fragment.html
new file mode 100644
index 0000000000000..ac64f4dfd4598
--- /dev/null
+++ b/Tests/LibWeb/Text/input/wpt-import/url/data-uri-fragment.html
@@ -0,0 +1,34 @@
+
+
+Data URI parsing of fragments
+
+
+
+
+
+
+
+
+