diff --git a/Tests/LibWeb/Text/expected/HTML/iframe-element-loading.txt b/Tests/LibWeb/Text/expected/HTML/iframe-element-loading.txt
new file mode 100644
index 00000000000..4bb18c0fa8b
--- /dev/null
+++ b/Tests/LibWeb/Text/expected/HTML/iframe-element-loading.txt
@@ -0,0 +1,5 @@
+ loading = eager
+
+loading = lazy
+
+loading = eager
diff --git a/Tests/LibWeb/Text/input/HTML/iframe-element-loading.html b/Tests/LibWeb/Text/input/HTML/iframe-element-loading.html
new file mode 100644
index 00000000000..976e1ac34eb
--- /dev/null
+++ b/Tests/LibWeb/Text/input/HTML/iframe-element-loading.html
@@ -0,0 +1,18 @@
+
+
+
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLIFrameElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLIFrameElement.idl
index bc758befeba..0e9485d2d0d 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLIFrameElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLIFrameElement.idl
@@ -1,4 +1,5 @@
#import
+#import
#import
// https://html.spec.whatwg.org/multipage/iframe-embed-object.html#htmliframeelement
@@ -16,7 +17,7 @@ interface HTMLIFrameElement : HTMLElement {
[CEReactions, Reflect] attribute DOMString width;
[CEReactions, Reflect] attribute DOMString height;
[FIXME, CEReactions] attribute DOMString referrerPolicy;
- [FIXME, CEReactions] attribute DOMString loading;
+ [CEReactions, Enumerated=LazyLoadingAttribute, Reflect] attribute DOMString loading;
readonly attribute Document? contentDocument;
readonly attribute WindowProxy? contentWindow;
Document? getSVGDocument();