diff --git a/Libraries/LibWeb/DOM/Document.h b/Libraries/LibWeb/DOM/Document.h index 6679e46e23..5ae6e1fb17 100644 --- a/Libraries/LibWeb/DOM/Document.h +++ b/Libraries/LibWeb/DOM/Document.h @@ -57,6 +57,8 @@ public: Origin origin() const; + bool is_scripting_enabled() const { return true; } + URL complete_url(const String&) const; void fixup(); diff --git a/Libraries/LibWeb/DOM/Element.cpp b/Libraries/LibWeb/DOM/Element.cpp index 24ddcfa793..41cf9c2587 100644 --- a/Libraries/LibWeb/DOM/Element.cpp +++ b/Libraries/LibWeb/DOM/Element.cpp @@ -114,6 +114,10 @@ RefPtr Element::create_layout_node(const StyleProperties* parent_sty if (display == "none") return nullptr; + + if (tag_name() == "noscript" && document().is_scripting_enabled()) + return nullptr; + if (display == "block") return adopt(*new LayoutBlock(this, move(style))); if (display == "inline")