diff options
-rw-r--r-- | Userland/Libraries/LibWeb/DOM/Element.cpp | 10 | ||||
-rw-r--r-- | Userland/Libraries/LibWeb/DOM/Element.h | 2 |
2 files changed, 11 insertions, 1 deletions
diff --git a/Userland/Libraries/LibWeb/DOM/Element.cpp b/Userland/Libraries/LibWeb/DOM/Element.cpp index b0c2f6d996..e562c1db1c 100644 --- a/Userland/Libraries/LibWeb/DOM/Element.cpp +++ b/Userland/Libraries/LibWeb/DOM/Element.cpp @@ -265,6 +265,16 @@ void Element::parse_attribute(const FlyString& name, const String& value) } } +void Element::did_remove_attribute(FlyString const& name) +{ + if (name == HTML::AttributeNames::style) { + if (m_inline_style) { + m_inline_style = nullptr; + set_needs_style_update(true); + } + } +} + enum class RequiredInvalidation { None, RepaintOnly, diff --git a/Userland/Libraries/LibWeb/DOM/Element.h b/Userland/Libraries/LibWeb/DOM/Element.h index 5747d7b9c1..f7d3047d70 100644 --- a/Userland/Libraries/LibWeb/DOM/Element.h +++ b/Userland/Libraries/LibWeb/DOM/Element.h @@ -85,7 +85,7 @@ public: virtual void apply_presentational_hints(CSS::StyleProperties&) const { } virtual void parse_attribute(const FlyString& name, const String& value); - virtual void did_remove_attribute(FlyString const&) { } + virtual void did_remove_attribute(FlyString const&); enum class NeedsRelayout { No = 0, |